C語言 char型別變數範圍

2021-10-04 03:01:22 字數 696 閱讀 2720

c語言中字元型別也是屬於整型,是否可以用signed和unsigned修飾符???

若初系統只提供了127個字元,那麼就將char型別變數的第乙個二進位制位設定為0,用後面7位存放0-127,此時,系統提供的char型別相當於signed char

但實際應用中可用的字元往往會多於127個,據此有的系統提供了擴充套件的字符集,把可用的字元由127個擴充套件到255個(擴大了一倍),此時char變數就位unsigned char型別,也即把第一位也用來存放字元**,但是這種方式並不適用於所有的系統。可以用以下語句檢驗。

unsigned char c=128;

printf("%d:%c",c,c);

注意:在中文作業系統下,ascii碼為127以後的部分被作為中文字元處理,所以不會顯示出擴充套件字元。

//分析程式結果

#include

intmain()

dev把字元型別資料作為signed char型別處理,它存字元的有效範圍為0-127,超過此範圍的處理方法

不同系統得到不同的結果,因而用%c格式輸出輸出時,結果是不可預料的

用%d格式輸出時,輸出-59,-58這是按補碼形式輸出的,59與197之和等於256,58+198也為256

所以:用char型別變數時給它賦值應在0-127範圍內

char 型別的取值範圍

1,包含了定義char int short long型別取值的最大值和最小值用常量表示 例如schar min 128 所以直接列印即可。2,如果要自己計算的話,則需要用到按位運算子 對於 char unsigned char 0 1 解釋 a unsigned char 0用二進位制表示為 111...

C語言資料型別char

char簡介 char是c c 中的基本資料型別,可容納單個字元的一種基本資料型別。char佔乙個位元組,也就是8個bit 二進位制位 0000 0000 1111 1111,在無符號型別時char表示的範圍是0 255,在有符號型別時char表示的範圍是 128 127,可以表示256個整數。注 ...

c語言中char型別轉int型別

剛才做北郵2010年網研上機題的時候,遇到了char型和int型相互轉化的問題,這裡進行一下總結。今後,可能會多次更新部落格,因為半年做了很多總結,但是都是儲存在word文件上了,現在開始慢慢向csdn部落格轉移。1 char型數字轉換為int型,例如 char a 123 printf d n a...