2、C编译系统对程序中的宏展开是在()。
A.编辑时进行的
B.编译时进行的
C.程序执行时进行的
D.编译前预处理时进行的
第1题:
宏调用就是对宏定义按参数表作替换,这实际上就相当于子程序的参数传递过程,这就是宏展开。( )
第2题:
在汇编语言程序的开发过程中使用宏功能的顺序是( )。
A、宏调用,宏定义
B、宏展开,宏定义
C、宏定义,宏调用,宏展开
D、宏定义,宏展开,宏调用
第3题:
此题为判断题(对,错)。
第4题:
若程序有宏定义:#define N l00,则以下叙述中正确的是( )。
A.宏定义中定义了标识符N的值为整数100
B.在编译程序对C源程序进行预处理时用l00替换标识符N
C.对C源程序进行编译时用100替换标识符N
D.在运行时用100替换标识符N
第5题:
以下叙述中不正确的是______。
A.C程序中的预处理命令行都以#号开始
B.宏定义中的宏名可用大写字母或小写字母
C.宏替换不占用运行时间,只占用编译时间
D.使用带参数的宏时,参数的类型应与宏定义时的一致
第6题:
C语言源程序中以开头的命令在( )进行处理。
A.对源程序编译之前 B.对源程序编译过程中 C.目标程序链接时 D.目标程序运行时
第7题:
此题为判断题(对,错)。
第8题:
第9题:
以下的叙述中不正确的是()
第10题:
有关宏展开的说法正确的是()。
第11题:
在宏展开时,所有的伪指令被加入
用宏定义体替换宏指令
哑元表中的哑元仍然保留
可以将宏指令变为机器代码
第12题:
宏定义,宏调用
宏定义,宏展开
宏定义,宏调用,宏展开
宏定义,宏展开,宏调用
第13题:
经宏定义定义后的指令就可以在源程序中调用,这种对宏指令的调用称为宏调用。( )
第14题:
此题为判断题(对,错)。
第15题:
A. 在程序连接时进行的
B. 在对源程序中的其它语句编译之前进行的
C. 在程序运行时进行的
D. 和C程序中的其它语句同时进行的
第16题:
下述描述正确的是(39)。
A.在程序的一行中可以出现多个有效的预处理命令行
B.使用带参宏时,参数的类型应与宏定义时的一致
C.宏替换不占运行时间,只占编译时间
D.宏定义不能出现在函数的内部
第17题:
下面的说法不正确的是( )
A.函数调用时,先求出实参表达式,然后带入形参。而使用带参的宏只是进行简单的字符替换
B.函数调用是在程序运行时处理的,分配临时的内存单元。而宏展开则是在编译时进行的,在展开时也要分配内存单元,进行值传递
C.对于函数中的实参和形参都要定义类型,二者的类型要求一致,而宏不存在类型问题,宏名有类型
D.调用函数只可得到一个返回值,而用宏可以设法得到几个结果
第18题:
A.在程序运行时进行
B.在程序连接时进行
C.和C++程序的其它语句同时进行编译
D.在对源程序中其它成分正式编译之前进行
第19题:
若程序中有宏定义行:#define N 100 则以下叙述中正确的是( )。
A.宏定义行中定义了标志符N的值为整数100
B.在编译程序对C源程序进行编译预处理时用100替换标志符N
C.对C源程序进行编译时用100替换标志符N
D.在运行时用100替换标志符N
第20题:
在单CPU的系统中,若干程序的并发执行是由()实现的。
A用户
B程序自身
C进程
D编译程序
第21题:
编译预处理包括()。
第22题:
有关宏的作用,下列说法不正确的是()。
第23题:
宏可以被多次调用
宏调用时不用保存断点
宏定义体中不可以有标号
宏展开是汇编程序完成的
第24题:
宏展开不占用运行时间,只占用编译时间
宏名无类型
宏名必须用大写字母表示
预处理命令行都必须以#号开始