大家看看这个程序: char c1='\\101'; printf("%c\n",c1); 为什么输出结果会是1啊。。刚学c。。求指教

日期:2013-03-01 00:22:55 人气:3

大家看看这个程序: char c1='\\101'; printf("%c\n",c1); 为什么输出结果会是1啊。。刚学c。。求指教

\是转义符,所以要表示\自己要用\\格式,也就是说'\\101'实际上是'\101',这会被解释为4字节的DWORD值,由于C1是单字节的字符型,所以高位\10丢弃,最终就是将字符1的ASC值赋给c1. 如果将\\改为一个\,则\101是转义字符,8进制101是字符A的ASC码.
    A+
热门评论