本文目錄一覽:
- 1、C語言說char是16位,又說他是1字節(byte)字節和位有啥區別?
- 2、在C語言中byte與char的不同
- 3、char和byte是一個意思?
- 4、C語言中的char具體用法
- 5、在c語言中,char類型數據所佔內存為多少byte
C語言說char是16位,又說他是1字節(byte)字節和位有啥區別?
C 語言 規定 char 型 是1 字節整型。1字節 等於 2進制8位, 2進制的一個位,中文叫“字元”,
英文叫 bit.
” C語言說char是16位” 這裡可能有中英文 誤解。
有個 “字符集”的概念,例如,ASCII 字符集里,一個字符 是 8 字元,中文雙字節編碼字符 是 2字節 16字元。還有其它編碼的 里的 字符,可能 是 多少多少 字節。
字符 英文叫 character。大概某些人混淆了 某 set 里 的 character 是16位,變成 char是16位了。
c 語言可以用 sizeof(char) 算得 char 占的內存字節數,你輸出看看:
printf(“%d”, sizeof(char));
在C語言中byte與char的不同
c語言
沒有內定的byte類型,起始byte就是
unsigned
char;
就是沒有
符號
的char類型。
char和byte是一個意思?
char和byte這兩種數據類型容易相互混淆,他們的區別主要如下:
1、數據類型不同
byte 是字節數據類型 ,是有符號型的,可以表示-128—127 的數;
char 是字符數據類型 ,是無符號型的,可以表示一個整數,不能表示負數。
用法舉例:
char i = 85;//U對應ASCII是85
byte d3 = 127; // 如果是byte d3 = 128;會報錯
byte d4 = -128; // 如果是byte d4 = -129;會報錯
2、佔用空間大小和大小範圍不同
byte佔1 個字節;大小範圍為-128—127 ;
char佔2字節(Unicode碼 );大小範圍 是0—65535 ;char是一個16位二進制的Unicode字符,JAVA用char來表示一個字符 。
3、另外char可以表示中文字符,byte不可以。用法舉例:
char e1 = ‘中’, e2 = ‘國’;
byte f= (byte) ‘中’; //必須強制轉換否則報錯
參考資料:百度百科-char
參考資料:百度百科-byte
C語言中的char具體用法
C語言中char用於定義字符類型變量或字符指針變量,例如“char a;”則定義了變量a是字符類型,“char *a;”則定義了變量a是字符指針類型。
char是C語言整型數據中比較古怪的一個,其它的如int/long/short等不指定signed/unsigned時都默認是signed,但char在標準中不指定為signed/unsigned,編譯器可以實現為帶符號的,也可以實現為不帶符號的。
關於char還有一個特殊的語言就是char *,它在C語言中有專門的語義,既不同於signed char *,也不同於unsigned char *,專門用於指以’\0’為結束的字符串。
C語言中char的不同應用:
1、字符型(char)
字符型(char)用於儲存字符(character),如英文字母或標點。嚴格來說,char 其實也是整數類型(integer type),因為 char 類型儲存的實際上是整數,而不是字符。計算機使用特定的整數編碼來表示特定的字符。
C 語言中保證 char 佔用空間的大小足以儲存系統所用的基本字符集的編碼。C 語言定義一個字節(byte)的位數為 char 的位數,所以一個字節可能是 16 位,也可能是 32 位,而不僅僅限於 8 位。
2、聲明字符型變量
字符型變量的聲明方式和其它類型變量的聲明方式一樣:
char good;
char better, best;
以上代碼聲明了三個字符型變量:good、better,和 best。
char是分配1字節,存儲的是ASCII碼,A:65,a:97;
在命名char類型是不要使用雙引號,c中必須單引號,在java中就高級點了什麼都可以。
補充:printf()輸出時對於char有點不同,使用“”%d“是輸出字符代表的ASCII碼。使用:%c,是輸出單個字符;使用%s:就是輸出多個字符了。
擴展資料:
C語言中的基本類型:
1、算數類型:
它們是算術類型,包括兩種類型:整數類型和浮點類型。
2 枚舉類型:
它們也是算術類型,被用來定義在程序中只能賦予其一定的離散整數值的變量。
3 void 類型:
類型說明符 void 表明沒有可用的值。
4 派生類型:
它們包括:指針類型、數組類型、結構類型、共用體類型和函數類型。
數組類型和結構類型統稱為聚合類型。函數的類型指的是函數返回值的類型。在本章節接下來的部分我們將介紹基本類型,其他幾種類型會在後邊幾個章節中進行講解。
void 類型:
void 類型指定沒有可用的值。它通常用於以下三種情況下:
1、函數返回為空:
C 中有各種函數都不返回值,或者您可以說它們返回空。不返回值的函數的返回類型為空。例如 void exit (int status)。
2、函數參數為空:
C 中有各種函數不接受任何參數。不帶參數的函數可以接受一個 void。例如 int rand(void)。
3、指針指向:
類型為 void * 的指針代表對象的地址,而不是類型。例如,內存分配函數 void *malloc( size_t size ); 返回指向 void 的指針,可以轉換為任何數據類型。
參考資料來源:百度百科-char
在c語言中,char類型數據所佔內存為多少byte
這個需要看編譯器的設置,VC、Dev C、VisualStudio等大部分編譯器的默認都是char佔一個字節(Byte)。在C和C 中可用函數sizeof(char)求出char的字節數。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/186105.html