猿问

图中是关于C语言中对"putchar函数"的使用规则的一些疑惑,麻烦帮忙看看!

如图,在《C程序设计》中,可以用putchar函数输出转义字符.....下面那3个例子,我想问:1.对于输出字符A。'\101'这字符是如何规定的?如果是ASC2码。那101并不对应A啊2.转义字符'\''的输出结果是“具有此八进制码的字符”,为何用函数输出字符 ' ?3.\015 为何表示“八进制位的数字15”? 就算表示 根据转义字符,也应该是'\o15'啊,字母o为何会变成0其他内容都能看进去 就是这三条例子把我搞蒙了,求解答啊,是错误还是有某些特定的规则? 小白对此感激不尽!


慕森卡
浏览 368回答 2
2回答

炎炎设计

1,\101是八进制转义字符,八进制101=十进制的65,正好是A2,此函数作用就是输出字符,它就是给你举个例子,告诉你可以输出'这个字符,不知道有什么疑惑的。3,就是这么规定的,\+三位数字(0-7之间)表示一个八进制转义字符,\o15是你自己的误解。

慕仙森

第1和第3是一个问题,转义字符\的\ooo不是真的o而是直接带仨八进制数字,比如\000,\001,\002,...,\007,\010,...。然后,'\101'='\x61'='a'=97第二个问题,是语言表述的问题,这里输出的意思不是打印在屏幕上而应该是返回。而且我感觉以后教材得专门解释“返回”这个词。汉语太博大精深。。。\'是单引号的转义。'\''返回一个单引号,这句话的“返回”一词的意思相当于“1+1‘返回’2”中的“返回”一词,就是说,把“1+1”写在这意思上相当于这里写了个“2”。'\''就相当于真的是有一个单引号在单引号里。(当然单引号里的单引号只能转义,真的写进去是不成的。)
随时随地看视频慕课网APP
我要回答