66问答网
所有问题
当前搜索:
宏定义需要编译吗
宏定义
里面不能再包含条件
编译
语句吗
答:
不可以
宏定义
要求必须写在一行 而条件
编译必须
是独立一行。这两个本身就是矛盾的 要条件编译加宏定义, 只能是条件编译在外层,宏定义在内层 比如 include <stdio.h>#ifdef TEST #define VALUE 0#else #define VALUE 1#endifint main(){printf("%d\n", VALUE);} ...
c语言的
宏定义
能不能修改?
答:
可以修改,但是修改完成后
必须
重新
编译
才可以生效
C语言中的
宏定义
有什么用?
答:
即使是定义double PI=3.14;,你会发现当代码很长时,在乱军丛中找到一行“double PI=3.14;”是多么困难的事。又比如数组,定义时是不能出现“int a[n];”这样的定义的,编译通不过,因为
必须
规定数组长度。但如果是:define N 10 int a[N];就可以,对
宏定义编译
器是不作检查的,应为宏定义...
多个
宏定义
的问题
答:
define argu1 argu2 argu3 用 "argu2 argu3" 替代 下面 遇到 的 所有的 argu1。行尾的 反斜杠 \ 表示下一行与现在这行 在同一行。
宏定义
在
编译
时执行,也就是编译 .c 程序,产生 .obj .exe 以前执行。产生.exe 以后,宏定义就没有痕迹了。执行主函数,是在 启动.exe 文件后,运行.exe...
C语言取消
宏定义
答:
宏定义
属于预
编译
阶段的处理过程。预编译是整个编译过程的第一步。编译器将检查代码中的所有预编译语句,遇到#include则将被包含的文件整个复制粘贴到#include位置替换#include语句,遇到#define语句则定义该宏并将文本中所有出现该宏的代码予以替换,遇到#ifdef、#ifndef、#endif语句则进行判断和执行相应操作...
C语言中,
宏定义
是不是C语句?
答:
在C语言中,
宏定义
不是C的语言。解释如下:宏属于C语言的预处理功能,在
编译
之前
要
替换到程序中。预处理就是在编译之前进行的操作。C语言的语句都是以分号结束,而预处理后面不能有分号;宏可以分成不带参数的宏和带参数的宏两种。
宏定义的宏
体可以为全局变量吗,求大神!
答:
宏定义
在定义后,相应的#undefine语句之间起作用。
编译
是先进行宏替换,而后进行实质编译,因此宏名不应该与实际变量名相同。一般变量名用小写字母,宏名用大写字母,加以区别。这里,宏定义名是BWT,与BW不同,没有问题。
宏定义
和全局变量的区别
答:
意义、赋值方式等区别。1、意义区别:
宏定义
是一个文本替换,在
编译
时被处理并替换成相应的值或代码片段,全局变量需在程序运行时分配内存空间,根据
需要
进行读取和修改操作。2、赋值方式区别:宏定义是一段字符,在编译过程中会直接替换掉所有引用该宏定义处。全局变量可以随时修改,更改将影响到整个程序...
c语言的
编译
过程是什么
答:
c语言的
编译
过程如下:1、预处理:预处理过程实际上是处理“#”的过程:#include包含的头文件直接拷贝到hello.c中;#define
定义的宏定义
进行替换,同时删除代码中没有的注释部分。2、编译:编译的过程实质上是将高级语言翻译成机器语言的过程。3、汇编:汇编器是将汇编代码转变成机器可以执行的命令,每一...
C语言中#define
宏定义
和变量定义的联系和区别
答:
没有联系,至于区别,也就谈不上
宏定义
是在
编译
阶段进行宏替换,说白了就是个记号,而这些记号对应着
需要
替换的代码,就是个方便编程的工具,没有也行。当然宏定义涉及变量,常量,语句,功能强大,不必多说。而变量嘛,就是在内存或者寄存器里面,保存数据的容器,再详细一点,就是某个实际存在的数据...
<涓婁竴椤
1
2
3
4
5
6
7
8
9
10
涓嬩竴椤
灏鹃〉
其他人还搜