① c語言中什麼時候用long
這個區別還是有的,short int 16位,int 32位 ; long 如果64為系統的話,就是64位; float為單精度; double為雙精度;就是二者的精度值不一樣,要求精度高的話,就用double好了;
② c語言中int,long的取值范圍是多少
Int的范圍:-2147483648~2147483647。
Long的范圍:-9223372036854775808~。
③ c語言long和long long有什麼區別
long long在win32中是確實存在,長度為8個位元組;定義為LONG64。
為什麼會出現long int呢,在win32現在系統中,長度為4;在歷史上,或者其他某些系統中,int長度為2,是short int。
即便是long long,在TI的有款平台中,長度為5。
也就是說,每種類型長度,需要sizeof才知道,如果可能,最好用union看看裡面的數據,可以消除一些類型的假象長度。
④ 在C語言中(long *)是什麼意思
long默認為長整數類型
*為指針操作符,long *就是指向長整數類型的指針
然後(long *),我想後面應該還跟著一個變數,(long *)的意思就是強制類型轉換,將後面的那個變數視為一個指向長整數類型的指針
⑤ c語言中int與long的區別
標准中規定int型必需16位或更高,long型必需32位,在以前16位機時這兩種數據就是一個16bit一個32bit,但進入x86時代後實際上兩者都是32位的,int型一般和處理器位數一致,代表都內存的定址空間
⑥ 關於C語言中的long long 的問題
signed char有符號位元組,表示範圍是-128~127,
unsigned char是無符號位元組,表示範圍是0~255。
long long是有符號長整形,表示範圍是-2^63~2^63-1。
signed char,unsigned char都是顯式聲明的有符號/無符號,而char可能是二者其中之一,由編譯器決定。就是說,如果你寫char,有可能是signed的,也有可能是unsigned的。但是絕大多數編譯器是默認為signed的。
值得注意的是,上面講的是表示範圍,但是無論是C還是C++,signedchar、unsignedchar、char是三種不同的類型。
出現這種情況可以歸結為歷史原因。早期C沒有專用於算術運算的單位元組整數類型,實現中也無法保證char使用什麼符號(不同符號轉換為超過一個位元組的整數類型時各個硬體平台的效率有差異)。後來才追加signedchar和unsignedchar。其符號是implementation-defined。
例子:
#include<stdio.h>
intmain()
{
signedchara=255;
unsignedcharb=255;
charc=255;
longlongd=100000000000;
longe=100000000000;
printf("%d ",a);
printf("%d ",b);
printf("%d ",c);
printf("%lld ",d);
printf("%d ",e);
return0;
}
結果:
可以發現可以容納的大小是不同的。
其中a,c,e發生了溢出,產生了不正確的結果。
⑦ 關於C語言long的用法
long關鍵字表示一種整型數據類型。它的用法與int、float、double等數據類型是一樣的。在輸入、輸出時,一般控制符使用%l
#include<stdio.h>
intmain()
{
longl;
scanf("%l",&l);
printf("%l",l);
return0;
}
⑧ long long 在c語言中是什麼類型
「longlongint」在C語言中是64位長整型數據類型。longlong是屬於int型,一般來講,是longint型大小的兩倍,int型的4倍。
「longlongint」在C語言中可以簡寫為「longlong」,作為「long」和「int」數據類型的強化版數據類型,它能支持的整數范圍是-2^63到2^63-1。而先前的「long」是32位長整型數據類型,整數范圍僅能支持到-2^31至2^31-1。
「longlongint」和「unsignedlonglongint」都是在C99標准中才被引進的。
(8)c語言中long擴展閱讀:
需要注意:
longlong是一個後來加上去的數值類型,也就是說非常老的編譯器是不支持這個數據類型的(如VC++6.0)。
C99標准引入的主要新功能:
1、對編譯器的限制增加了,比如每行源代碼至少需要4095位元組,變數和函數名需要63位元組(extern最多需要31位元組)。
2、添加了新的關鍵字restrict,inline,_Complex,_Bool。
3、支持longlong、longdouble_Complex、float_Complex等類型。
4、一個不確定長度的數組。數組的長度是一個變數。當你聲明一個類型時,你寫一個int[*]。但就效率和執行而言,這並不是一種新類型。所以你不能在全局或結構聯合中使用它,如果你使用類似的東西,goto語句是受約束的。
5、與C89標准相比,C99引入了一種新的結構/數組初始值設定項,名為指定初始值設定項。
6、支持十六進制浮點數描述。
7、添加了一個內置的本地靜態字元數組變數,它可以用於獲取當前函數的函數名。
8、函數的默認返回類型是int型。
⑨ c語言中(long)5876273是什麼類型
long是long int類型的簡寫,在有些系統中,兩者都是認同的,有的則不可以。
⑩ C語言long是什麼意思
long 是C語言的一個關鍵字,代表一種數據類型,中文為長整型。