码迷,mamicode.com
首页 > 其他好文 > 详细

do/while(0) c4127

时间:2015-01-22 13:09:23      阅读:137      评论:0      收藏:0      [点我收藏+]

标签:

原文链接:http://cnicholson.net/2009/03/stupid-c-tricks-dowhile0-and-c4127/

// NOISY CODE  
#define MULTI_LINE_MACRO(VALUE) do {    \
        printf("Hello ");         printf("world!\n");         } while (VALUE)

int main()
{
    MULTI_LINE_MACRO(0);
    return 0;
}
技术分享

#pragma warning(disable:4127)

如果添加这句,那么包含改文件的都会被disable

最好是这样

#define MULTI_LINE_MACRO(VALUE) do {    \
        printf("Hello ");         printf("world!\n");         __pragma(warning(push))        __pragma(warning(disable:4127))        } while (VALUE)        __pragma(warning(pop))

只有这几行是disbale的

是__pragram而不是#program,#program不能这样用,不能让在宏定义里;

do/while(0) c4127

标签:

原文地址:http://www.cnblogs.com/panyingying/p/4241310.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!