char可以是负数吗
生活随笔
收集整理的這篇文章主要介紹了
char可以是负数吗
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
C語(yǔ)言標(biāo)準(zhǔn)中沒有規(guī)定char是signed char還是unsigned char,所以這就取決于編譯器的實(shí)現(xiàn)了。
大部分編譯器默認(rèn)情況下將char解釋為signed char,例如gcc和vc的編譯器,這很大程度上是因?yàn)閕nt默認(rèn)是signed。
在程序中進(jìn)行判斷的方法:
#include <stdio.h>
int main(){
char a = -1;
if (a == -1){
printf("signed char\n");
}else{
printf("unsigned char\n");
}
return 0;
}
在樹莓派環(huán)境下測(cè)試時(shí)發(fā)現(xiàn)編譯器默認(rèn)char時(shí)無符號(hào)的,
char a = -1;
printf("a = %d\n");
結(jié)果: a = 255
這種情況下想要char是有符號(hào)的,需要在代碼中顯示的定義
signed char a = -1;
這樣再輸出就是-1了。
所以,認(rèn)為char就是signed char大部分情況下是沒有問題的,不過以防萬一還是沒有錯(cuò)的。
?
總結(jié)
以上是生活随笔為你收集整理的char可以是负数吗的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 对称、群论与魔术(一)——对称性本质探索
- 下一篇: java 卫星轨道6根数实现轨道预测