一只学C的萌新 发表于 2021-9-17 17:02:47

萌新求助

小甲鱼在带你学C带你飞的第五课中#define 标志符 常量   对于常量格式我有一个疑问
我认为字符串是要被双引号包括,常量(比如数字)是直接输入,但小甲鱼的课后作业为什么将 \n 使用单引号;是不是转义字符都是单引号包括
PS:能不能稍微教一下为什么字符串是要被双引号包括,常量(比如数字)是直接输入,\n 使用单引号的原因,秋梨膏
感谢大佬

qq1151985918 发表于 2021-9-17 17:06:49

本帖最后由 qq1151985918 于 2021-9-17 17:08 编辑

{:10_257:}我还以为是python,进错论坛了

jhq999 发表于 2021-9-17 17:07:48

双引号是以‘\0’为结尾的字符串,单引号是字符

番杰 发表于 2021-9-17 17:11:50

双引号内一般都是字符串,像:“i love tomato !”
单引号内一般是字符,像:‘a’,‘B’之类的,
而\n,它是一个转义字符(换行),转义字符嘛!归根结底它还是一个字符,不是一个字符串,
所以用‘\n’,而不是“\n”就比较好理解啦

一只学C的萌新 发表于 2021-9-17 17:14:58

jhq999 发表于 2021-9-17 17:07
双引号是以‘\0’为结尾的字符串,单引号是字符

那为什么前面的 标志符不用加双引号
#define NT '\n'的NT不用加双引号,NT不也是字符串吗,谢谢

jhq999 发表于 2021-9-17 17:16:15

本帖最后由 jhq999 于 2021-9-17 17:17 编辑

一只学C的萌新 发表于 2021-9-17 17:14
那为什么前面的 标志符不用加双引号
#define NT '\n'的NT不用加双引号,NT不也是字符串吗,谢谢

它是常量名

一只学C的萌新 发表于 2021-9-17 17:18:40

番杰 发表于 2021-9-17 17:11
双引号内一般都是字符串,像:“i love tomato !”
单引号内一般是字符,像:‘a’,‘B’之类的,
而\n ...

感谢大佬,顺便问一下两个字符以上包括两个字符就是字符串吗

jhq999 发表于 2021-9-17 17:21:40

一只学C的萌新 发表于 2021-9-17 17:18
感谢大佬,顺便问一下两个字符以上包括两个字符就是字符串吗

双引号空的也是字符串,有一个字节,里面是‘\0’

一只学C的萌新 发表于 2021-9-17 17:22:00

jhq999 发表于 2021-9-17 17:16
它是常量名

只要是大写字母都是常量名吗,谢谢大佬

jhq999 发表于 2021-9-17 17:23:45

一只学C的萌新 发表于 2021-9-17 17:22
只要是大写字母都是常量名吗,谢谢大佬

你小写也行,只要不违反命名规则,怎么写都行

一只学C的萌新 发表于 2021-9-17 17:33:18

jhq999 发表于 2021-9-17 17:23
你小写也行,只要不违反命名规则,怎么写都行

好的,我明白了,谢谢大佬
页: [1]
查看完整版本: 萌新求助