C语言中定义常数变量怎么定义 用define的那种
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言中定义常数变量怎么定义 用define的那种相关的知识,希望对你有一定的参考价值。
举个例子 比如在函数中定义常数π
参考技术A 因为define是一种宏定义,所以他属于一种全局类型,不需要在函数中定义,只要在源代码开头定义的话,整个源文件都可以使用该变量,假如要要定义常数π,那就#define pi 3.1415926就可以了例如
#include <stdio.h>
#define pi 3.1415926
int main(...)
....
void function(...)
float a;
a=pi;
.....
有不懂追问吧,望采纳本回答被提问者采纳 参考技术B #define pi 3.1415926
c++ 在编译时对define所定义的变量是怎么处理的?
我知道普通的变量和函数,好像是在编译的时候会生成一个Obj的目标文件!那#define EXT 4;之类的怎么处理呢
宏定义在编译的时候进行替换。#define EXT 4 不安全,建议修改成 #define EXT (4)追问
那有很多文件都有#define EXT 4这个呢?但是不同的文件又对EXT的定义不同怎么办?
追答你需要相同还是不同?
如果需要定义相同,定义在一个同文件,其他使用文件包含此同文件即可。
如果需要定义不同,1: 修改各个宏,保证名字不同,这样风险低。
2: 不用修改宏,但保证各个文件相互无包含。那么宏仅仅作用于自身所在文件。
那有很多文件都有#define EXT 4这个呢?但是不同的文件又对EXT的定义不同怎么办?
追答#define EXT 4 的有效范围仅限于定义文件。
参考技术B 对define处理是在编译之前进行的.会把所有的EXT都替换为4.追问
那有很多文件都有#define EXT 4这个呢?但是不同的文件又对EXT的定义不同怎么办?
追答各自用各自的啊.
参考技术C 这种情况它不叫变量,也不是常量,只是简单字符串代替,编译的时候换回去,这样做只是为了编写和阅读代码更方便更易懂以上是关于C语言中定义常数变量怎么定义 用define的那种的主要内容,如果未能解决你的问题,请参考以下文章