单选题若程序中有宏定义行:#define N 100则以下叙述中正确的是(  )。A宏定义行中定义了标识符N的值为整数100B在编译程序对C源程序进行预处理时用100替换标识符NC上述宏定义行实现将100赋给标识符ND在运行时用100替换标识符N

单选题
若程序中有宏定义行:#define N 100则以下叙述中正确的是(  )。
A

宏定义行中定义了标识符N的值为整数100

B

在编译程序对C源程序进行预处理时用100替换标识符N

C

上述宏定义行实现将100赋给标识符N

D

在运行时用100替换标识符N


参考解析

解析:
D项正确,预处理程序对源程序中所有使用宏名的地方进行直接替换。A项错误,宏定义没有类型限制;B项错误,预处理程序进行宏替换,而非编译程序;C项错误,宏定义不是赋值操作,而是进行在预编译时进行替换。答案选择D选项。

相关考题:

若程序中有宏定义行 :#define N 100 则以下叙述中正确的是A) 宏定义行中定义了标识符 N 的值为整数100B) 在编译程序对C 源程序进行预处理时用100 替换标识符NC) 对 C 源程序进行编译时用 100 替换标识符ND) 在运行时用 100 替换标识符N

若有以下宏定义:#define N 2#define Y(n)((N+1)*n)则执行语句z=2*(N+Y(5));后的结果是( )。A.语句有错误B.z=34C.z=70D.z无定值

以下关于宏的叙述错误的是()A.宏名必须用大写字母表示B.宏替换时要进行语法检查C.宏替换不占用运行时间D.宏定义中不允许引用已有的宏名

在下列有关宏替换的叙述中,错误的是()A.宏替换占用运行时间B.宏替换只是字符替换C.带参数的宏替换和函数等价D.宏名有类型

当源程序被汇编时,汇编程序将对每个宏调用作宏展开。宏展开就是用宏定义体取代源程序中的宏指令名,并且用实元取代宏定义中的哑元,对应关系是一一对应。( )

若程序有宏定义:#define N l00,则以下叙述中正确的是( )。A.宏定义中定义了标识符N的值为整数100B.在编译程序对C源程序进行预处理时用l00替换标识符NC.对C源程序进行编译时用100替换标识符ND.在运行时用100替换标识符N

以下叙述正确的是______。A.可以把define和if定义为用户标识符B.可以把define定义为用户标识符,但不能把if定义为用户标识符C.可以把if定义为用户标识符,但不能把define定义为用户标识符D.define和if都不能定义为用户标识符

若程序中有宏定义行:#define N 100 则以下叙述中正确的是A.宏定义行中定义了标识符N的值为整数100B.在编译程序对C源程序进行预处理时用100替换标识符NC.对C源程序进行编译时用100替换标识符ND.在运行时用100替换标识符N

以下关于宏的叙述中正确的是( )A.宏名必须用大写字母表示B.宏替换时要进行语法检查C.宏替换不占用运行时间D.宏定义中不允许引用已有的宏名

在下列关于宏定义命令# define的叙述中,正确的一条是 ( )A.用一个指定的标识符(宏名)来代替一个长整型数B.用一个指定的标识符(宏名)来代替一个双精度数C.用一个指定的标识符(宏名)来代替一个字符串D.用一个指定的标识符(宏名)来代替一个单精度实数

以下叙述中不正确的是______。A.C程序中的预处理命令行都以#号开始B.宏定义中的宏名可用大写字母或小写字母C.宏替换不占用运行时间,只占用编译时间D.使用带参数的宏时,参数的类型应与宏定义时的一致

若程序中有宏定义行:A.AB.BC.CD.D

以下叙述中不正确的是A.预处理命令都必须以#号开始B.在程序中凡是以#号开始的语句行都是预处理命令行C.宏替换不占用运行时间,只占编译时间D.以下定义是正确的:#define PI 3.1415926;

若程序有宏定义:#define N 100则以下叙述中正确的是______。A.宏定义中定义了标识符N的值为整数100B.在编译程序对C源程序进行预处理时用100替换标识符NC.对C源程序进行编译时用100替换标识符ND.在运行时用100替换标识符N

若程序中有宏定义行:#defineN100,则以下叙述中正确的是( )。A.宏定义行中定义了标识符N的值为整数100B.在编译程序对c源程序进行预处理时用100替换标识符NC.对c源程序进行编译时用100替换标识符ND.在运行时用100替换标识符N

若程序中有宏定义行:#define N 100 则以下叙述中正确的是( )。A.宏定义行中定义了标志符N的值为整数100B.在编译程序对C源程序进行编译预处理时用100替换标志符NC.对C源程序进行编译时用100替换标志符ND.在运行时用100替换标志符N

在宏定义“#define MAX  100”中,用宏名代替一个()。A、整数B、长整数C、字符串D、常量

以下有关宏替换的叙述不正确的是()。A、宏替换不占用运行时间B、宏名无类型C、宏替换只是字符替换D、宏名必须用大写字母表示

“e2”是()。A、实型常数100B、值为100的整型常数C、非法标识符D、合法标识符

表示一个语句是宏定义语句的标识符是()。A、includeB、#includeC、defineD、#define

在Access中,宏是按()调用的。A、名称B、标识符C、编码D、关键字

以下有关宏替换的叙述不正确的是()。A、宏替换不占用运行时间B、宏名无类型C、宏替换只是字符串替换D、宏替换是在运行时进行的

单选题在宏定义“#define MAX  100”中,用宏名代替一个()。A整数B长整数C字符串D常量

单选题若程序中有宏定义行:#define N 100则以下叙述中正确的是(  )。A宏定义行中定义了标识符N的值为整数100B在编译程序对C源程序进行预处理时用100替换标识符NC上述宏定义行实现将100赋给标识符ND在运行时用100替换标识符N

单选题表示一个语句是宏定义语句的标识符是()。AincludeB#includeCdefineD#define

单选题以下有关宏替换的叙述不正确的是()。A宏替换不占用运行时间B宏名无类型C宏替换只是字符串替换D宏替换是在运行时进行的

单选题以下关于宏的叙述错误的是(  )。A宏替换不具有计算功能B宏是一种预处理指令C宏名必须用大写字母构成D宏替换不占用运行时间

单选题以下叙述正确的是()。A可以把define和if定义为用户标识符B可以把define定义为用户标识符,但不能把if定义为用户标识符C可以把if定义为用户标识符,但不能把define定义为用户标识符Ddefine和if都不能定义为用户标识符