程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C >> 關於C >> 數據和C

數據和C

編輯:關於C

整數就是沒有小數部分的數,在C中小數點永遠不會出現在整數中。例如2,-24,2456都是整數,整數以二進制存儲,例如7的二進制表示為111,在8位的字節中存儲它的前5位為0,將後3位置1.

\

<喎?/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHA+uKG148r9vLS808HL0KHK/bXjtcTK/S4gMi43NSwzLjE2RTcsNy4wMCwyZS04trzKx7ihtePK/aOsPC9wPgo8cD48aW1nIHNyYz0="/uploadfile/Collfiles/20131209/20131208222515375.jpg" alt="\">

區別:

浮點數可以表示比整數范圍大得多的數。

對於一些算術運算,浮點數會損失更多的精度

浮點數的計算會慢於整數,不過,已經開發出專門處理浮點運算的微處理器。

/*以十進制8進制16時制輸出100*/

#include 

int main(void)
{
	int x =100;
	printf("dec =%d octal =%o hex =%x \n",x,x,x);
	printf("dec =%d octal =%#o hex =%#x \n",x,x,x);
}


#include 
#include 
int main(void)
{
	int16_t me16;
	me16 =4593;

	printf("First assume int16_t is short : me16=%hd size=%zd\n",me16,sizeof(int16_t));
	
}

#include 

int main(void)
{
	int i = 2147483647;
	unsigned int j = 4294967295;

	printf("%d,%d,%d\n",i,i+1,i+2);
	printf("%u,%u,%u\n",j,j+1,j+2);

	return 0;
}

結果:

2147483647,-2147483648,-2147483647

4294967295,0,1

Note:

這個例子是基於int值是4字節的情況,注意無符號數的取值范圍0-4294967295,所以無符號的減法操作時沒有負數.


Char 類型

#include 
int main(void)
{
	char grade ='A';
	char grade1 =65;
	char testChar ='ABCD';
	printf("%c,%c,%c \a\n",grade,grade1,testChar);
	return 0;
}
結果:
A A D

Char 類型用於存儲字母和標點符號之類的字符。但是在技術實現上char類型卻是整數類型,這是因為char類型實際存儲的是數字而不是字符。為了處理字符,計算機使用一種數字編碼,用特定的整數表示特定的字符。所以可以用char grade1 =65;給字符賦值。

在int類型為32位及char 類型為8位的ASCII系統中 char grade =’B’意味著’B’作為數值66存儲在一個8位單元中。利用字符常量這個特性,可以定義字符常量’ABCD’,將這4個獨立的8位ASCCI碼存儲一個32位單元中。然而,如果把這個字符常量賦給一個char變量,那麼只有最後8位會起作用,因此變量值為D.



  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved