首页 热点资讯 义务教育 高等教育 出国留学 考研考公

c语言 中 一个函数能调用另一个函数中的#define变量吗

发布网友

我来回答

5个回答

热心网友

正像上面的那个朋友所说的,#define是宏定义,但是说是“最先编译”的有点不准确,因为编译的话是将代码转换成机械码的过程。而宏是在编译之前由编译器先替换成要替换的字符或字符串的,我感觉用“翻译”会更准确。
明白了上面这段,下面你问的也就好解决了!
int add(int a, int b){
#define PI 3.14
……
}

int rece(int a, int b){
int m = PI;
……
}
#undef PI

……

在#define和#undef之间的PI在编译前都会被替换成3.14,所以是有效的。到这里的话其它的你也就应该都明白了!但是就像上面的朋友说的一样,不提倡这么用!

热心网友

#define 是宏定义,是最先编译的,我们使用宏定义一般不在函数内定义,因为这样做意义不大而且容易造成你提问的理解问题,为了避免不好了解,建议在函数外定义,这样每个函数都可以使用,才显示出它的意义。

热心网友

不可以的,要用全局变量

热心网友

可以 但是一开始就把它定义好

热心网友

定义成全局变量就可以!

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com