www问答网
所有问题
计算机二级C语言中宏替换的替换规则是怎样的?麻烦举例说明。
如题。
举报该问题
推荐答案 2013-09-24
#include<iostream>
using namespace std;
#define PI 3.141593 //宏定义PI,在下面程序中出现的PI都将用3.141593代替
#define S(a,b) a*b //宏定义S(a,b),a,b为形参,在下面程序中出现的S(a,b)都将用a*b代替
int main()
{
printf("%f\n",PI);
int a=S(3,4);
printf("%d\n",a);
return 0;
}
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://www.wendadaohang.com/zd/nKAK5K53555WAdA5nn.html
其他回答
第1个回答 2013-09-24
简单的宏替换#define f(x) x+5f(8)*f(10)就是8+5*10+5,而不是(8+5)*(10+5)
第2个回答 2013-09-24
来嘛去呀你不信就快就给
相似回答
C语言
中,
宏替换的替换规则
答:
规则2:多次扫描
。在所有的形参替换为实参后,对结果进行再次扫描,如果发现还有可替换的宏,则进行替换,否则中止。规则3:
递归替换抑制
。如果在替换列表中发现当前正在展开的宏的名字,那么这里不进行替换.更进一步,在嵌套 的替换过程中发现已经替换过的宏的名字,则不进行替换。规则4:递归预处理抑制。如果...
C语言
问题,宏定义中的参数为什么要定义,不是主函数中的参数直接
替换
吗...
答:
int b = A; // 在编译之前,这行代码会被
替换
成: int b = 2;所以#define只是替换,可没有定义相关的参数。用这道题来举个例子:define JH(a, b, t) t=a; a=b; b=t;int t, a=1, b=2;JH(a, b, t); // 在编译之前,这行代码会被替换成: t=a; a=b; b=t;所...
C语言
:预处理是什么意思?就是看不懂这句话的解释!越具体越好,也可以通 ...
答:
对于头文件,做展开操作。比如再某个.
c
中include了一个头文件,这一行预处理时就会被
替换
为头文件的内容。对于宏,比如你define了一个宏。这里就会把程序里面所有用到这个宏的地方替换掉。当然宏还有其他操作,但是它们都是再预处理阶段就被处理了的 ...
c语言
中的“宏”是指什么?
答:
1、条件编译:
C语言
中,预处理过程读入源代码,检查包含预处理指令的语句和宏定义,并对源代码进行相应的转换,预处理过程还会删除程序中的注释和多余的空白符号。预处理指令是以#开头的代码行,#必须是该行除了空白字符外的第一个字符。#后是指令关键字,在#和指令关键字之间允许存在若干空白字符。使用...
不知道
怎么
理解
宏替换
。
计算机二级
vfp
答:
首先我们来看VFP的运行结果再来
说明
原理。1、将已知条件送入变量并显示。从显示的结果来看,n和m显示的是数值型,而k的值显示是字符型。2、再将所求表达式"1+&k"在命令行显示。再看其结果。显示的值是“100”。从结果反推过去,我可以想到表达式的化成数值表达式为“1+44+55”,这个表达式的值就是...
C语言
中,
宏替换
与定义全局变量的区别是什么?
答:
1 作用时间不同。宏定义在编译期间即会使用并
替换
,而全局变量要到运行时才可以。2 本质类型不同。宏定义的只是一段字符,在编译的时候被替换到引用的位置。在运行中是没有宏定义的概念的。而变量在运行时要为其分配内存。3 宏定义不可以被赋值,即其值一旦定义不可修改,而变量在运行过程中可以被...
C语言
文件操作问题,
怎样替换
文件中一行数据
答:
C语言
提供了文件操作,但是
替换
文件的某一行比较
麻烦
,下面一个参考方法,文件中存贮的内容如下所示: 通过使用下面的几个函数,fopen,fprintf,fscanf,fseek,ftell 。具体的函数函数原型如下所示: FILE*fopen(const char*filename,const char *mode); int fprintf(FILE*stream,const char *format,...) int fscanf(FI...
C语言
编译系统对
宏替换的
处理是在什么时候进行的
答:
是正式工作开始之前的准备工作,所以宏替换是在对程序编译之前进行的。
宏替换是C
/C++的预处理中的一部分,对于宏定义中的形参,在替换列表中,如果不是作为#或##的操作数,那么将对应实参完全展开(相当于对实参进行求值),然后将替换列表中的形参替换掉,如果是#或##的操作数。
c语言中宏
名是什么类型?
答:
掌握"宏"概念的关键是“换”。一切以换为前提、做任何事情之前先要换,准确理解之前就要“换”。即在对相关命令或语句的含义和功能作具体分析之前就要换:例:define PI 3.1415926 把程序中出现的PI全部换成3.1415926
说明
:(1)宏名一般用大写 (2)使用宏可提高程序的通用性和易读性,减少不一致...
大家正在搜
c语言是计算机的什么语言?
C语言宏替换规则
c语言的宏是怎么处理的
c语言计算机二级
计算机二级c语言好过吗
计算机二级c语言难吗
计算机二级c语言教材
计算机二级c语言软件
c语言宏定义和宏替换
相关问题
C语言中,宏替换的替换规则
C语言宏替换
C语言的宏替换到底是怎样的存在
C语言:(1)宏替换有数据类型的限制吗?(2)宏调用笔函数调...
C语言中,宏替换与定义全局变量的区别是什么?
C语言编译系统对宏替换的处理是在什么时候进行的
宏代换如何解释?
宏定义,直接替换