首页 > 其他 > 详细

宏定义 中 do{}while() 语句的作用

时间:2015-09-30 01:14:55      阅读:188      评论:0      收藏:0      [点我收藏+]

考虑以下情形:

 #define func(type, x, y) 

int a = 1;

int b = 2

if (a > b)

    func(int, a, b);

else{type tmp = x; x = y; y = tmp;}

    std::cout<<"Hello, World!"<<std::endl;


这种情况下, func 被调用的时候,语句的末尾有个分号。编译预处理以后会变成如下情况:

int a = 1;

int b = 2

if (a > b)

    {type tmp = x; x = y; y = tmp;};

else

    std::cout<<"Hello, World!"<<std::endl;

编译时会报错


参考链接:http://www.cnblogs.com/bastard/archive/2011/11/24/2262195.html


宏定义 中 do{}while() 语句的作用

原文:http://my.oschina.net/u/1176097/blog/512665

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!