SolidWorks机械工程师网——最大的SolidWorks学习平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 4891|回复: 7
打印 上一主题 下一主题

讨论宏启动器的编制方法

  [复制链接]

1

主题

7

帖子

52

金币

天使

Rank: 2Rank: 2

积分
106

最佳新人

跳转到指定楼层
楼主
 楼主| 发表于 2023-5-27 15:31:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

   经典图书
在编写宏的时候或许会存在一些问题,比如通常的目标是书写一个包含单独的函数调用语句的宏。这意味着“调用者” 需要提供最终的分号, 而宏体则不需要。因此宏体不能为简单的括弧包围的复合语句, 因为如果这样, 调用的时候就会发生语法错, 就像在if/else 语句的if 分支中多了一个else 分句一样。

因此个人认为传统的结局方案就是这样使用:
#define MACRO(arg1, arg2) do { \
/* declarations */ \
stmt1; \
stmt2; \
/* ... */ \
} while(0) /* 没有结尾的; */
当调用者加上分号后, 宏在任何情况下都会扩展为一个单独的语句。优化的编译器会去掉条件为0 的“无效” 测试或分支, 尽管lint 可能会警告。
如果宏体内的语句都是简单语句, 没有声明或循环, 那么还有一种技术, 就是写一个单独的, 用一个或多个逗号操作符分隔的表达式。这种技术还可以“返回” 一个值。

评分

参与人数 1威望 +5 金币 +52 贡献 +5 收起 理由
专门设计 + 5 + 52 + 5 赞一个!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享教程|习题|模型|技巧 点赞点赞 拍砖拍砖
SolidWorks机械工程师网
提示:建议使用谷歌浏览器浏览本网站!如单击这里下载!否则,可能无法下载附件文件!(支持大多数版本的谷歌浏览器,支持360和QQ浏览器的极速模式,即谷歌内核模式,使用IE和Edge浏览器,浏览个别网页以及下载文件时,会误报“***不安全”,此时需要单击“继续访问此不安全站点(不推荐)”才可以继续下载,另外,本网站不含任何不安全的文件,已联系微软公司解决,纯属IE和Edge浏览器误报)
回复

使用道具 举报

1

主题

7

帖子

52

金币

天使

Rank: 2Rank: 2

积分
106

最佳新人

沙发
 楼主| 发表于 2023-5-29 08:32:01 | 只看该作者
努力学习!共同进步。
SolidWorks机械工程师网
提示:建议使用谷歌浏览器浏览本网站!如单击这里下载!否则,可能无法下载附件文件!(支持大多数版本的谷歌浏览器,支持360和QQ浏览器的极速模式,即谷歌内核模式,使用IE和Edge浏览器,浏览个别网页以及下载文件时,会误报“***不安全”,此时需要单击“继续访问此不安全站点(不推荐)”才可以继续下载,另外,本网站不含任何不安全的文件,已联系微软公司解决,纯属IE和Edge浏览器误报)
回复 支持 反对

使用道具 举报

1

主题

35

帖子

104

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
209
QQ
板凳
发表于 2023-5-31 18:14:07 | 只看该作者

   经典图书
SW机械工程师网,找到组织了!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

3

主题

362

帖子

47

金币

长老

Rank: 6Rank: 6Rank: 6

积分
1101

最佳新人活跃会员热心会员宣传达人灌水之王突出贡献

地板
发表于 2023-6-24 22:57:57 | 只看该作者
顶一下,坐等高手!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

3

主题

1354

帖子

338

金币

传奇

Rank: 8Rank: 8

积分
4852

最佳新人活跃会员热心会员宣传达人灌水之王突出贡献

5#
发表于 2023-7-9 15:43:49 | 只看该作者

   经典案例图书
非常不错,求楼主分享!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

1

主题

170

帖子

380

金币

长老

Rank: 6Rank: 6Rank: 6

积分
1498

最佳新人活跃会员热心会员宣传达人灌水之王

6#
发表于 2024-1-21 13:23:38 | 只看该作者
非常不错,求楼主分享!
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

0

主题

121

帖子

29

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
420

最佳新人活跃会员热心会员宣传达人

7#
发表于 2024-3-29 18:38:16 | 只看该作者

   经典案例图书
宏启动器宏启动器
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

0

主题

85

帖子

30

金币

侠客

Rank: 3Rank: 3Rank: 3

积分
275

最佳新人活跃会员热心会员宣传达人

8#
发表于 2024-7-10 11:46:09 | 只看该作者
不错学习一下
SolidWorks机械工程师网
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭 卷起
关闭 卷起

SOLIDWORKS 2023 机械设计从入门到精通

手机版|小黑屋| GMT+8, 2024-10-26 03:35 , Processed in 0.168641 second(s), 25 queries , Memcache On.

SolidWorks机械工程师网 ( 鲁ICP备14025122号-2 ) 鲁公网安备 37028502190335号

声明:本网言论纯属发表者个人意见,与本网立场无关。
如涉版权,可发邮件: admin@swbbsc.com

快速回复 返回顶部 返回列表