putchar("\101") 为什么会输出 字符 Aputchar('\") 为什么会输出单撇号字符 ""puchar("\015") 为什么么是输出回车 不换行
2 回答
拉丁的传说
TA贡献1789条经验 获得超8个赞
\101是八进制转义字符,八进制101对应十进制是65,ascii65对应的字符就是'A'
'\"是转义字符,转义为"
\015是八进制转义字符,八进制15对应十进制是13,ascii65对应的字符回车
小怪兽爱吃肉
TA贡献1852条经验 获得超1个赞
你不明白什么是字符变量,字符变量存储数值在C语言中的表现形式。'c1'是值(当然,这个值是非法的,因为一个字符变量只能存储一个字符),c1(不带引号)是变量,变量存储的是值(带引号)。
putchar的函数参数只能是一个字符,你的程序中'c1'并不是一个字符。程序会忽略c,只输出'1',实际上等同putchar('1');,所以你改为c3,c4就相当于putchar('3');putchar('4');就输出34。
你想输出c1的值就不能加引号,改为putchar(c1);
还有,为了保持数据的一致,应该将变量c1和c2定义为字符型数据:char c1=getchar(),c2=getchar();
添加回答
举报
0/150
提交
取消