共找到3條詞條名為long的結果 展開
- C語言字元
- 《絕地求生》職業電競選手
- 詞語釋義
long
C語言字元
long關鍵字表示一種長整型數據,是編程語言中的一種基本數據類型,為long int的縮寫,默認為有符號長整型,含4個位元組,取值範圍為:-2^31 ~ (2^31 -1)。
長整型數據類型是C語言等編程語言中常用的一種數據類型。
長整型數據類型分為有符號長整型和無符號長整型,各自的取值範圍如下:
(1)長整型
類型標識符:long[int]
位元組:4個
取值範圍:-2147483648~2147483647(-2^31~(2^31-1))
(2)無符號長整型
類型標識符:unsignedlong[int]
位元組:4個
取值範圍:0~4294967295(0~(2^32-1))
#includeint,main(void){printf("Please input the data ang click 'enter'\r\n"); printf("short=%d\n\n",sizeof(short));printf("int=%d\n\n",sizeof(int));printf("long=%d\n\n",sizeof(long)); printf("float=%d\n\n",sizeof(float)); printf("double=%d\n",sizeof(double));}
輸出結果為:
short=2
int=4
long=4
float=4
double=8
c語言中整數溢出的問題分析示例:
#includeintmain(void){int i=2147483647;unsigned int j=4294967295;printf ("%d,%d,%d",i,i+1,i+2);printf("%u,%u,%u",j,j+1,j+2);return 0;}程序中所設置的整形和無符號整形變數的值均為系統所允許的最大值,運行結果如下:
i= 2147483647
i+1=-2147483648
i+2=-2147483647
j=4294967295
j+1=0
j+2=1
分析可知:無符號整數j達到最大值時,將溢出到起始點。整數i也同樣。
他們主要的區別是unsigned int變數j的起始點是0,而int變數起始點是-2147483648。