社区
灌水乐园
交流讨论
帖子详情
做个废人59
2023-05-22 16:51:09
以下说法中正确的是(D).A:宏替换是在程序编译时进行的B:函数调用是在程序编译时进行的C:宏替换时,如果实参是表达式,应先求表达式的值,再替换D:函数调用时,如果实参是表达式,应将表达式的值传递给形参
...全文
19
回复
打赏
收藏
以下说法中正确的是(D).A:宏替换是在程序编译时进行的B:函数调用是在程序编译时进行的C:宏替换时,如果实参是表达式,应先求表达式的值,再替换D:函数调用时,如果实参是表达式,应将表达式的值传递给形参
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
相关推荐
论述含参数的
宏
与函数的优缺点
1.
函数调用
时
,先求出
实参
表达式
的
值
,然后带入
形参
。而使用带参的
宏
只是
进行
简单的字符
替换
。 2.
函数调用
是在
程序
运行
时
处理的,分配临
时
的内存单元;而
宏
展开则是在
编译
时
进行
的,在展开
时
并不分配内存单元,不
进行
值
的传递处理,也没有“返回
值
”的概念
论述含参数的
宏
与函数的优缺点。
论述含参数的
宏
与函数的优缺点 1.
函数调用
时
,先求出
实参
表达式
的
值
,然后带入
形参
。而使用带参的
宏
只是
进行
简单的字符
替换
。 2.
函数调用
是在
程序
运行
时
处理的,分配临
时
的内存单元;而
宏
展开则是在
编译
时
进行
的,在展开
时
并不分配内存单元,不
进行
含参数的
宏
与函数有什么区别?
含参数的
宏
有
时
完成的是函数实现的功能,但是并非所有的函数都可以被含参数的
宏
所替代,各自特点如下:
函数调用
时
,首先求出
实参
表达式
的
值
,然后带入
形参
。而使用带参的
宏
只是
进行
简单的字符
替换
。
函数调用
是在
程序
运行
时
处理的,它需要分配临
时
的内存单元;而
宏
展开是在
编译
时
进行
的,在展开
时
并不分配内存单元,也不
进行
值
的传递处理,也没有“返回
值
”的概念。对函数
中
的
实参
和
形参
都要定义类型,两者的类型要求一致,如果不一...
带参数的
宏
与函数的不同
#define Pi 3.1415926 #define S(r) PI*r*r (1)
函数调用
时
,先求出
实参
表达式
的
值
,然后代入
形参
,而使用带参数的
宏
只是
进行
简单的字符
替换
。例如S(a+b),在
宏
展开
时
并不求a+b的
值
,而只将
实参
字符“a+b
替换
形参
r” (2)
函数调用
是在
程序
运行
时
处理的,为
形参
分配临
时
的内存单元。而
宏
展开则是在
编译
前
进行
的,在展开
时
并不分配内存单元,不
进行
值
的传递处理
带参
宏
定义和
函数调用
的区别
1.
函数调用
时
,先求出
实参
表达式
的
值
,然后带入
形参
。而使用带参的
宏
只是
进行
简单的字符
替换
。 2.
函数调用
是在
程序
运行
时
处理的,分配临
时
的内存单元;而
宏
展开则是在
编译
时
进行
的,在展开
时
并不分配内存单元,不
进行
值
的传递处理,也没有“返回
值
”的概念。 3.对函数
中
的
实参
和
形参
都要定义类型,二者的类型要求一致,如不一致,
应
进行
类型转换;而
宏
不存在类型问题,
宏
名无类型,它的参数也无类型,只是一个符号代表...
灌水乐园
27,527
社区成员
105,688
社区内容
发帖
与我相关
我的任务
灌水乐园
就等你来冒个泡~
复制链接
扫一扫
分享
社区描述
就等你来冒个泡~
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
版主:
社区助手