c语言判断

来源:百度知道 编辑:UC知道 时间:2024/07/03 23:47:14
char c,a;
c='A',a="A";
判断对错

char c,a;
c='A',a="A";

c='A'对
a="A" 错

因为char型变量在内存中只占有1Byte
'A'--表示字符
"A"--表示字符串,在内存中占有2Bytes,第一个字节存放的是字符'A',第二个字节存放的是,字符串结束标志,即'0'

所以是不能把占有两个字节的字符串值赋值给只占有一个字节的char变量

错了

a='A' 才是正确的

东软软件工程师批注

双引号是引用语句的,char是字符

c='A',对
a="A",错,因为“”是字符串,A,还有一个结束符‘\0’

C=‘A’是对的,后一个是错的
char 在内存中只占一个字节,因此给C赋值是要注意。
‘A’是字符,在内存中只占一个字节,但是“A”是字符串,系统默认了一个结尾标志符“/0”,因此在内存中占两个字节。