打印
[资料工具]

介绍下#define的用法

[复制链接]
1144|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
lkjoi|  楼主 | 2017-4-27 14:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
elhfs| | 2017-4-27 14:33 | 只看该作者
该语句没有分号。在标识符和串之间可以有任意个空格,串一旦开始,仅由一新行结束。

使用特权

评论回复
板凳
lkjoi|  楼主 | 2017-4-27 14:33 | 只看该作者
宏名定义后,即可成为其它宏名定义中的一部分

使用特权

评论回复
地板
elhfs| | 2017-4-27 14:34 | 只看该作者
宏替换仅仅是以文本串代替宏标识符,前提是宏标识符必须独立的识别出来,否则不进行替换。例如:
#define XYZ this is a tes
使用宏printf("XYZ");//该段不打印"this is a test"而打印"XYZ"。因为预编译器识别出的是"XYZ"

使用特权

评论回复
5
zzzhui| | 2017-4-27 14:51 | 只看该作者
如果串长于一行,可以在该行末尾用一反斜杠' \'续行。
#defineLONG_STRING"this is a very long\
string that is used as an example"

使用特权

评论回复
6
vgtfrd| | 2017-4-27 15:02 | 只看该作者
C 语言程序普遍使用大写字母定义标识符

使用特权

评论回复
7
戈卫东| | 2017-4-27 20:20 | 只看该作者
vgtfrd 发表于 2017-4-27 15:02
C 语言程序普遍使用大写字母定义标识符

虽然大家都用大写字母做宏的名字,但用小写也不会导致编译错误的。

使用特权

评论回复
8
pkuzhx| | 2017-4-28 08:43 | 只看该作者
为什么老有这种帖子,一群小号自己玩……

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

8

主题

64

帖子

0

粉丝