社区
C++ 语言
帖子详情
如何用#define去定义一个空字符串
hubs
2004-10-26 01:54:03
比如mmm,我如何去定义
#define mmm
即mmm abc 在编译时等同于 abc
...全文
601
12
打赏
收藏
如何用#define去定义一个空字符串
比如mmm,我如何去定义 #define mmm 即mmm abc 在编译时等同于 abc
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
beyondtkl
2004-10-26
打赏
举报
回复
# 表示连接。。。
#define mmm(str) #str
你将str传入空字符串 不就OK?
xuzheng318
2004-10-26
打赏
举报
回复
#define mmm str
mmm 就是你定义的宏,后面是代替的str 就可以了
hubs
2004-10-26
打赏
举报
回复
我试了一下,不行,我是这样的
#define SOCK_API
class SOCK_API CSockAddr
#else
class CSockAddr
#endif
DiabloWalkOnTheEarth
2004-10-26
打赏
举报
回复
#define mmm
就可以了.
hubs
2004-10-26
打赏
举报
回复
而且我试了一下,用宏的时候要加括号,我想直接mmm abc 等于 abc
hubs
2004-10-26
打赏
举报
回复
我的意思是在mmm后面所遇到的字符串是不确定的,因为我是在两种系统下都能运行的程序(WIN32 和Linux)
lynnboy
2004-10-26
打赏
举报
回复
#define mmm(str) #str
...
cout << mmm(1234) << endl; // "1234"
cout << mmm(abcd) << endl; // "abcd"
yjh1982
2004-10-26
打赏
举报
回复
一样的.试一下就知道了
hubs
2004-10-26
打赏
举报
回复
abc只是我举的一个例子,如果是任意字符串呢,
yjh1982
2004-10-26
打赏
举报
回复
mmm(abc) 就会转为"abc"啊
hubs
2004-10-26
打赏
举报
回复
恕我脑笨,能不能说明一下#define mmm(str) #str
yjh1982
2004-10-26
打赏
举报
回复
#define mmm(str) #str
#
define
的定义用法
C语言中#
define
的用法,C语言宏定义#
define
叫做宏定义命令,它也是C语言预处理命令的一种。所谓宏定义,就是用一个标识符来表示一个
字符串
,如果在后面的代码中出现了该标识符,那么就全部替换成指定的
字符串
。格式:#
define
标识符 常量注意:后面不加分号return 0;} 运行结果: 120100return 0;} 运行结果: 120注意第 6 行代码int sum = 20 + N,N被100代替了。
宏定义#
define
的一些总结
类对象宏(无参宏) 类函数宏(带参数的宏) #的作用 ##的作用 类函数宏(带参数的宏)和函数的对比 #undef 防止头文件被重复包含或引用
C++中宏定义#
define
的用法
#
define
是C语言中提供的宏定义命令,其主要目的是为程序员在编程时提供一定的方便,并能在一定程度上提高程序的运行效率,但大家在学习时往往不能理解该命令的本质,总是在此处产生一些困惑,在编程时误用该命令,使得程序的运行与预期的目的不一致,或者在读别人写的程序时,把运行结果理解错误,这对 C语言的学习很不利。 一、#
define
命令剖析 (1) #
define
的概念 #
define
命令是C语...
#
define
用法总结
#
define
的用法经常不理解,特开一个总结帖。 数据类型的替换 #
define
CONST(type, memclass) const type 当遇到CONST(type, memclass) 的时候,会被const type 所替代。 普通的数字替换 #
define
kk 10 防止重复编译 “app.h”文件中包含函数max()的定义; 此时如果,“bpp.h”文件和...
#
define
宏定义
#
define
叫做宏定义命令,它也是C语言预处理命令的一种。所谓宏定义,就是用一个标识符来表示一个
字符串
,如果在后面的代码中出现了该标识符,那么就全部替换成指定的
字符串
。 #include <stdio.h> #
define
N 100 int main(){ int sum = 20 + N; printf("%d\n", sum); return 0; } 输出结果:120 #
define
N 100就是宏定义,N为宏名,100是宏的内容(宏所表示的
字符串
)。在预处理阶段,对程序中所有出现
C++ 语言
65,213
社区成员
250,514
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章