强制转换
main()
{
char b[]= "hello,you ";
b[5]=0;
printf( "%s\n ",b);
}
程序中,原本数字0在内存中占用4个字节,二进制代码为0000 0000 0000 0000 0000 0000 0000 0000,放进字符型变量中,二进制代码长度被削减,变成0000 0000,但其ascii码值仍为0?
[解决办法]
你是 char類型, 做為b[5]=0來講就只占1一個字節,就是0x00, 0是在char的存儲范圍之內,所以不會有錯。