字符串与字符数组的问题
char str[] = {1,1,1,1,1,1,0,1,0,1};
则表达式 str[0] == 1 返回的是真;
若 char *str = "1111110101";
则表达式 str[0] == 1 返回的是假;
我想知道这是什么原因呢?有什么不同呢?
百思不得其解,恳请各位大牛指教,万分感谢!
[解决办法]
第一个 是把数字1赋值给str[0] = 1;
第二个 是 字符1赋值给str[0] ='1' //这个时候str[0] = 49;
//两个的大小不同的, 楼主查查assic表
[解决办法]
此1非彼1,第一个是真的数字1,第二个是用来输出的字符,ascii中用49表示
[解决办法]
数值与字符的区别
数字1并不等于字符'1'