日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
C語(yǔ)言——數(shù)據(jù)類型、基本數(shù)據(jù)類型的取值范圍-創(chuàng)新互聯(lián)

目錄

創(chuàng)新互聯(lián)公司長(zhǎng)期為上1000+客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開(kāi)放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為煙臺(tái)企業(yè)提供專業(yè)的成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè),煙臺(tái)網(wǎng)站改版等技術(shù)服務(wù)。擁有十多年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開(kāi)發(fā)。

一、數(shù)據(jù)類型

1.基本類型

2.sizeof運(yùn)算符

3.signed和unsigned?

二、取值范圍

1.比特位

2.字節(jié)

3.符號(hào)位

4.補(bǔ)碼

5.基本數(shù)據(jù)類型的取值范圍


一、數(shù)據(jù)類型

1.基本類型

(1)整數(shù)類型

  • short int
  • int
  • long int
  • long long int

(2)浮點(diǎn)數(shù)類型

  • float
  • double
  • long double

(3)字符類型

  • char

(4)布爾類型

  • _Bool

(5)枚舉類型

  • enum
2.sizeof運(yùn)算符

sizeof 運(yùn)算符用于獲得數(shù)據(jù)類型或表達(dá)式的長(zhǎng)度

如:-sizeof(object);? ? ? ? ?? ? ?//sizeof(對(duì)象)

?-sizeof(type_name);? ? ? //sizeof(類型)

?-sizeof object;? ? ? ? ? ? ? ?//sizeof 對(duì)象

代碼舉例:

#includeint main()
{
	int i;
	char j;
	float k;
	
	i = 123;
	j = 'C';
	k = 3.14;
	
	printf("size of int is %d\n",sizeof(int));
	printf("size of i is %d\n",sizeof(i));
	printf("size of char is %d\n",sizeof(char));
	printf("size of j is %d\n",sizeof j);
	printf("size of float is %d\n",sizeof(float));
	printf("size of k is %d\n",sizeof k);
	
	return 0;
}

代碼運(yùn)行結(jié)果:

分別打印各類型所占字節(jié):

#includeint main()
{
	printf("int = %d\n",sizeof(int));
	printf("short int = %d\n",sizeof(short));
	printf("long int = %d\n",sizeof(long));
	printf("long long int = %d\n",sizeof(long long));
	printf("char = %d\n",sizeof(char));
	printf("_Bool = %d\n",sizeof(_Bool));
	printf("float = %d\n",sizeof(float));
	printf("double = %d\n",sizeof(double));
	printf("long double = %d\n",sizeof(long double));
	
	return 0;
	
}

運(yùn)行結(jié)果(設(shè)備不同,結(jié)果可能也不同):

3.signed和unsigned?

? signed:代表有符號(hào)的,第一個(gè)位代表正負(fù),剩余的代表大小,例如:signed int 大小區(qū)間為-128-127。(默認(rèn)為signed)

? unsigned:代表無(wú)符號(hào)的,所有的位都為大小,沒(méi)有負(fù)數(shù),例如:unsigned int 大小區(qū)間為:0-255。

  • [signed] short [int]
  • unsigned short [int]
  • [signed] int
  • unsigned int
  • [signed] long [int]
  • unsigned long [int]
  • [signed] long long [int]
  • unsigned long long [int]

代碼舉例:

#includeint main()
{
	short i;
	unsigned short j;
	
	i = -1;
	j = -1;
	
	printf("%d\n",i);//d為打印帶符號(hào)的 
	printf("%u\n",j);//u為打印不帶符號(hào)的 
	
	return 0;
}

運(yùn)行結(jié)果:

可見(jiàn),打印 j 時(shí),結(jié)果并不是我們期望出現(xiàn)的-1,而是65535,這與數(shù)據(jù)類型的取值范圍有關(guān)。

二、基本數(shù)據(jù)類型的取值范圍 1.比特位

CPU能讀懂的最小單位是:比特位,bit,b。每個(gè)比特位只能存放二進(jìn)制數(shù),即0和1.

2.字節(jié)

內(nèi)存機(jī)構(gòu)最小尋址單位:字節(jié),Byte,B

注:1Byte = 8 bit

一個(gè)字節(jié)能存放的大的數(shù)(2^{31}-1)用二進(jìn)制表示為:

11111111

該數(shù)轉(zhuǎn)化為十進(jìn)制為:2147483647

補(bǔ)充:進(jìn)制

打印2^{32}-1,代碼如下:

# include#includeint main()
{
	unsigned int result = pow(2,32) - 1;
	printf("result = %u\n",result);
	
	return 0;
}

運(yùn)行結(jié)果:

注意:若不加“unsigned”,則輸出結(jié)果為2147483647.這是因?yàn)槟J(rèn)情況下int是signed類型的,也就是說(shuō)左邊第一位是符號(hào)位,所以必須加“unsigned”來(lái)使其變?yōu)橐粋€(gè)無(wú)符號(hào)的整型變量,使得32位都用來(lái)存放數(shù)值。

3.符號(hào)位
  • 存放signed類型的存儲(chǔ)單元中,左邊第一位表示符號(hào)位。如果該位為0,表示該整數(shù)是一個(gè)正數(shù);如果該位為1,表示該整數(shù)是一個(gè)負(fù)數(shù)。
  • 一個(gè)32位的整型變量,除去左邊第一位符號(hào)位,剩下表示值的只有31個(gè)比特位。
4.補(bǔ)碼
  • 正數(shù)的補(bǔ)碼是該數(shù)的二進(jìn)制形式。
  • 負(fù)數(shù)的補(bǔ)碼需要通過(guò)以下幾步獲得:

(1)先取得該數(shù)的絕對(duì)值的二進(jìn)制形式

(2)再將第1步的值按位取反(除符號(hào)位)

(3)最后將第2步的值加1

例如:

5.基本數(shù)據(jù)類型的取值范圍
數(shù)據(jù)類型字節(jié)數(shù)取值范圍
char1-128~127
unsigned char210~255
short2-32768~32767
unsigned short20~65535
int4-2147483648~2147483647
unsigned int40~4294967295
long4-2147483648~2147483647
unsigned long40~4294967295
long long8-9223372036854775808~9223372036854775807
unsigned long long80~18446744073709551615
數(shù)據(jù)類型字節(jié)數(shù)取值范圍(絕對(duì)值)
float41.17549*10^-38~3.40282*10^38
double82.22507*10^-308~1.79769*10^308
long double122.22507*10^-308~1.79769*10^308

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購(gòu),新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧


新聞名稱:C語(yǔ)言——數(shù)據(jù)類型、基本數(shù)據(jù)類型的取值范圍-創(chuàng)新互聯(lián)
標(biāo)題來(lái)源:http://www.dlmjj.cn/article/cecphs.html