C语言字符常量题

题:在C语言中,以下合法的字符常量是

A. "\n"

B. 'ab'

C. '\x43'

D. '\084'

正确答案:C

解析:

A 有双引号,是字符串

B 单引号里只能一个字符

D \0表明是8进制,只能出现0--7的数字

知识点(1)

char a = 'k';a是字符,占一个字节;char a[] = "k" a是字符串,占两个字节;C语言在定义字符和字串的时候有不同,会在字符串变量的末尾加上‘\0’

知识点(2)

字符串也可以用作常量,其中“\”是转义字符,如"\x23G"会输出字符串"#G",因为十六进制数0x23的ASCII码是35,对应的字符是‘#’。但写成"\x234"就会出错,因为十六进制的转义字符的格式是"\xhh",只接收两位十六进制数,如果第三位是十六进制数便会报“超限”错误,但若第三位不是十六进制数,如“G",便会将其直接处理成字符G,结果就是"\x23G"的输出结果是"#G"。

知识点(3)

函数调用时,char a = '1',这里的a是一个变量,传值,修改的规则都和int一致;char *s = "123"或char s[]="123",这里的s是一个指针,fun(s)传的是指针,不是"123"这个字符串。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容