首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

printf("%c"'\41'); 输出的结果是“!” 不解.解决办法

2012-03-09 
printf(%c,\41)输出的结果是“!”不解... printf( %c , \41 )那个 \41 没看明白,到底是什么东西?还

printf("%c",'\41'); 输出的结果是“!” 不解...

printf( "%c ", '\41 ');       那个 '\41 '没看明白,到底是什么东西?    

还有     假如我改成printf( "%c ", '41 ');       输出的是1,也搞不懂,看过一些资料也没有......

[解决办法]
printf( "%c ", '\41 '); 那个 '\41 '没看明白,到底是什么东西?
--------------------
'\41 ' 表示8进制数41,转换成10进制是(4*8^1+1*8^0) 33,
‘\41’即 33,33是字符‘!’所对应的ASCII码。所以printf( "%c ", '\41 ')等于printf( "%c ",33),那么最后输出的就是字符 '! ' 。


printf( "%c ", '41 '); 输出的是1,也搞不懂,
-----------------------------------------
首先看 '41 '这种写法,其实这样写是错的,在这里,41已经是一个字符串了,字符串的书写应该是“41”,而‘41’还只是字符的写法,字符只能存放一个数据,系统默认这个数为最后一个,在这就是‘1’,所以输出的时候是‘1’,就好比我们输出这个printf( "%c ", 'abc ');最后的结果是c 。

热点排行