10. C语言的编译系统对宏命令的处理是( )。

10. C语言的编译系统对宏命令的处理是( )。A. 在对源程序中的其它语句编译之前进行的B. 在程序运行时进行的C. 和C程序中的其它语句同时进行的D. 在程序连接时进行的 11. 下面四个选项中,均是合法整型常量的选项是A. 160 -0xffff 011B. -0xcdf 01a 0xeC. -01 986,012 0668D. -0x48a 2e5 0x12. 以下关于运算符优先顺序的描述中正确的是A. 关系运算符<算术运算符<赋值运算符<逻辑与运算符B. 逻辑与运算符<关系运算符<算术运算符<赋值运算符C. 赋值运算符<逻辑与运算符<关系运算符<算术运算符D. 算术运算符<关系运算符<赋值运算符<逻辑与运算符

前言:宏实质就是编译器在对代码进行编译之前进行的一个“查找替换”工作,就跟你在处理文档时用WPS/WORD/记事本等进行“查找替换”操作一样。

C语言的编译系统对宏命令的处理是()
A。在程序运行时进行的
B。在对源程序中其他成分正式编译之前进行的
C。在程序连续时进行的
D。和C程序中的其他语句同时进行编译

答:选B。在对源程序中其他成分正式编译之前进行的

2,
#define N 2 /* 在预编译时将用下面代码中N替换成2 */
#define M N+1 /* 在预编译时将M替换成N+1(即2+1,N会再被替换成2)*/
#define NUM 2*M+1 /* 如上:在预编译时NUM替换成2*M+1,即2*N+1+1,即2*2+1+1*/
main()
{int i;
for(i=1;i<=NUM;i++)printf("%d\n",i);
/*
* 如上所述,上句展开为:for(i=1;i<=2*2+1+1;i++)printf("%d\n",i);
* 所以:循环将执行6次
*/
}

/* 切记注意:每一个宏百进行替换时只是替换“正文”中的内容,而不包括预编译语句的内容, 否则就会像不少人理解的那样,错误地认为第2个题中的循环将执行7次 */
温馨提示:内容为网友见解,仅供参考
第1个回答  2014-08-26
选A,是在预编译的时候进行处理的,
第2个回答  2014-08-26
10题选A
11题选A
12题选C本回答被网友采纳

C语言的编译系统对宏命令的处理
A。在程序运行时进行的 B。在对源程序中其他成分正式编译之前进行的 C。在程序连续时进行的 D。和C程序中的其他语句同时进行编译 答:选B。在对源程序中其他成分正式编译之前进行的 2,defineN2\/*在预编译时将用下面代码中N替换成2*\/ defineMN+1\/*在预编译时将M替换成N+1(即2+1,N会再被...

10. C语言的编译系统对宏命令的处理是( )。
A。在程序运行时进行的 B。在对源程序中其他成分正式编译之前进行的 C。在程序连续时进行的 D。和C程序中的其他语句同时进行编译 答:选B。在对源程序中其他成分正式编译之前进行的 2,define N 2 \/* 在预编译时将用下面代码中N替换成2 *\/ define M N+1 \/* 在预编译时将M替换成N+1(即2...

C语言的宏定义问题
#define是C语言中提供的宏定义命令,其主要目的是为程序员在编程时提供一定的方便,并能在一定程度上提高程序的运行效率,但学生在学习时往往不能理解该命令的本质,总是在此处产生一些困惑,在编程时误用该命令,使得程序的运行与预期的目的不一致,或者在读别人写的程序时,把运行结果理解错误,这对 C语言的学习很不利。

c++ 宏命令能不能在for循环语句中出现?
你这个宏可以出现在任何位置。。。比如 for(int i=0;i!=x;++i){ ifndef MICRO cout<<1<<endl;else cout<<2<<endl;endif } 如果编译器读到这里发现你没有定义过MICRO这个名词 就循环输出1,否则循环输出2.。。

详解宏定义(#define)
预处理工作是系统引用预处理程序对源程序中的预处理部分做处理,而预处理部分是指以“#”开头的、放在函数之外的、一般放在源文件的前面的预处理命令,如:包括命令#include,宏命令#define等,合理地利用预处理功能可以使得程序更加方便地阅读、修改、移植、调试等,也有利于模块化程序设计。本文主要介绍宏定义的以下几个...

c语言define的用法
2、简单的define定义#define MAXTIME 1000 一个简单的MAXTIME就定义好了,它代表1000,如果在程序里面写if(iMAXTIME){...} 编译器在处理这个代码之前会对MAXTIME进行处理替换为1000。3、C语言中无参宏定义的一般形式为:define 宏名 字符串 其中的“#”表示这是一条预处理命令。凡是以“#”开头的...

c语言中编译的过程是怎样的?
一个环境需要的代码跟另一个环境所需的代码可能有所不同,因为可用的硬件或操作系统是不同的。在许多情况下,可以把用于不同环境的代码放在同一个文件中,再在预处理阶段修改代码,使之适应当前的环境。主要是以下几方面的处理:(1)宏定义指令,如 #define a b。对于这种伪指令,预编译所要做的是将程序中的所有a...

c语言 define 怎么用的
预处理是C语言的一个重要功能,它由预处理程序负责完成。当对一个源文件进行编译时,系统将自动引用预处理程序对源程序中的预处理部分作处理,处理完毕自动进入对源程序的编译。宏的定义 在C或C++语言源程序中允许用一个标识符来表示一个字符串,称为“宏”。被定义为“宏”的标识符称为“宏名”。在编译预处理时...

c语言程序设计教程答案c语言程序设计练习题
3)字符型常量,是用单撇引号括起来的单一字符,对一些特殊字符和控制字符用 的形式表示。 4)字符串常量,是用双撇引号括起来的一串字符序列。字符串的结束标志为。 (2)符号常量 符号常量是使用某个符号代表的常量,符号常量使用编译预处理中的宏定义命令定义。 3.C程序中使用变量,必须先,后。变量定义后,系统会根据...

C语言学习第18篇---宏定义与使用 \/ 条件编译使用分析
C语言中的宏定义和条件编译是两个重要概念,它们为代码编写提供了灵活性和效率。首先,宏定义是预处理器处理的一种特殊指令,通过#define可以创建常量或表达式,它们可以在程序的任何位置使用,但需注意宏的表达式处理方式类似于函数调用,可能更容易出错。例如:cpp define MY_CONSTANT 100 MY_CONSTANT; \/...

相似回答