我是靠谱客的博主 眼睛大方盒,最近开发中收集的这篇文章主要介绍宏定义define,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

#define宏定义是个演技非常高超的替身演员,我们用它要慎之又慎。


const修饰的数据 是有类型的,而define宏定义的数据 没有类型

define宏只是 简单的替换.

#define SQR(x)  x*x 
假设x是10,SQR(10)就被替换为10*10,但是当x为10+1,SQR(x)被替换为   10+1*10+1。这样就出问题了。

所以应该这么定义,多加几个括号: #define SQR(x)  ((x)*(x)) //多加几个括号,别吝啬括号。

通常用typedef定义某种类型如 int,long的别名,而不是用#define,用define会带来一些问题。。。

在用define进行宏定义时,后边 不要用”//“注释文字。否则会出问题的,编译器不会将这些文字当成注释。可以另起一行再注释。



2、用宏定义一个函数时,需要在同一行上定义,如果一行不够写,需要加'', 最后一行上的变量是该表达式的返回值。
语法: #define func(x,y) ({
                 char a;
                     ....
                     ....
                 a;                  
})

最后

以上就是眼睛大方盒为你收集整理的宏定义define的全部内容,希望文章能够帮你解决宏定义define所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(41)

评论列表共有 0 条评论

立即
投稿
返回
顶部