C语言预编译之宏定义的处理讲解

 2023-03-15 18:57:17  阅读 0

一、宏定义的概述

宏定义的基本形式如下:

# define  标识符  字符串

#表示这是一 条预处理命 令

我们看一段代码:

//FileName: chap9_1.c
#include <stdio.h>
#define M (y*y+3*y)
int main( )
{
 int s,y;
 printf("input a number: ");
 scanf("%d",&y);
 s=3*M+4*M+5*M;
 printf("s=%d\n",s);
 return 0;
}

分析运行的结果,和我们之前使用的变量定义方式存在着什么不同的地方

程序运行结果如下: input a number:2↙ s=120

使用宏定义的几点注意事项:

①在C语言中宏定义其实就是用宏名来定义字符串,将字符串换一种方式表达,在宏展开时又以该字符串来取代宏名。

②说了这么多那么宏定义待敌是不是说明或语句,是的,宏定义是说明语句,并且在行末不必加分号,如加上分号则连分 号也一起置换。

③其实通过上面的代码,不难看出宏定义是必须写在函数之外的,而且他的作用域为宏定义命令起到了源程序结束。

④那么将宏名在源程序中使用引号括起来,结果就是预处理程序不对其作宏代换。

标签:

如本站内容信息有侵犯到您的权益请联系我们删除,谢谢!!


Copyright © 2020 All Rights Reserved 京ICP5741267-1号 统计代码