C語言中,為什麼char型別可以用於算數運算

2021-10-24 08:36:47 字數 653 閱讀 4096

char本質上和int一樣,是乙個整型資料,故當然可用於算數運算

char是8位的,剛好足夠表示乙個ascii碼,於是用於表示字元

實際上,int也可用於表示字元

char c =

'a';

int c =

'a';

在輸入 / 輸出時,由格式符來決定輸出的形式

int ch;

scanf

("%c"

,&ch)

;

printf

("%d %d %c %c"

,c,c,c,c)

;

這些都是可以的

參考這裡

另外,在c++中,cin和cout可以智慧型地識別資料的型別,自動以資料的型別進行儲存

char ch;

cin >> ch;

//這裡即便輸入乙個數字,也將以其編碼進行儲存

cout << ch;

char與int在本質上都是整型;

只是在輸入/輸出 時,c++中聰明的cin/cout會自動將char型資料以字元形式處理

而在c中則只能有程式設計師自己輸入/輸出的格式化,以得到想要的格式

c語言中char型別轉int型別

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

C語言中char 和 char 區別

原文 c語言中char 和 char 區別 想要把丟掉的東西撿起來,還是很辛苦啊,今天我就發現,我連char 和 char 的區別都不知道。很多人覺得這兩個定義效果一樣,其實差別很大。以下是個人的一些看法,有不正確的地方望指正。本質上來說,char s定義了乙個char型的指標,它只知道所指向的記憶...

C語言中char 和 char 的區別

在實習過程中發現了乙個以前一直預設的錯誤,同樣char c abc 和char c abc 前者改變其內容程式是會崩潰的,而後者完全正確。程式演示 首先要搞清楚編譯程式占用的記憶體的分割槽形式 乙個由c c 編譯的程式占用的記憶體分為以下幾個部分 1 棧區 stack 由編譯器自動分配釋放,存放函式...