c语言中‘*’为什么不是合法的字符常量

2022-03-10 社会 144阅读
首先看定义,用单引号括起来的单个字符,或用双引号括起来的一串字符即字符常量。
C'&'是用单引号括起来的单个字符,正确。
A'\xff'B'\65'D'\028'是用单引号括起来的多个字符,但因它们前面都有一个转义符‘\‘,就不能说它们都不符合定义,都不合法的。

A'\xff'中'\x'组合表示是一个十六进制数ffH=10进制的255,它代表一个不可见字符的ASCII码,合法。

B'\65'同理'\'+三个十进制数'\ddd'表示的是八进制数。'\65'='\065'=10进制的53,是‘F’的ASCII码表示。单字,合法。

D'\028'同上表示是八进制数,但八进制数中逢八则进一,是不会出现8的,所以格式虽对但数值错了。不合法。
声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com