c语言中#define的用法

C语言中,可以用 #define 定义一个标识符来表示一个常量。其特点是:定义的标识符不占内存,只是一个临时的符号,预编译后这个符号就不存在了。

预编译又叫预处理。预编译不是编译,而是编译前的处理。这个操作是在正式编译之前由系统自动完成的。

#define的格式为:#define 标识符 常量

为了将标识符与变量名区别开来,习惯上标识符全部用大写字母表示。宏定义用得最多的地方是在数组中用于指定数组的长度。

下面来写一个程序:# include

# define NUM 5

int main(void)

{

int i, j = NUM;

int a[NUM] = {0};

printf("请输入%d个数:", j);

for (i=0; i

{

scanf("%d", &a[i] );

}

for (i=0; i

{

printf("%d\x20", a[i]);

}

printf("\n");

return 0;

}

输出结果是:请输入5个数:5 4 3 2 1

5 4 3 2 1

NUM 是定义的宏,它表示的是其后的常量(而不是变量)。此外,程序中用双引号括起来的宏在预处理的时候是不会被宏替换的。因为在 C 语言中,用双引号括起来表示的是字符串。

更多C语言教程,请关注PHP中文网!

#define c# 报错_c语言中#define的用法相关推荐

  1. c语言define需要分号骂,C语言中define的用法

    C语言中define的用法 2016-01-06 15:00  来源: 博客园 define是C语言中的预处理命令,它用于宏定义,可以提高源代码的可读性,为编程提供方便. 预处理命令以"#& ...

  2. getch方法_c语言中getch的用法

    1 c 语言中 getch 的用法 getch() 函数是无回显的从控制台取得一个字符. 以利用 getch() 函数让程序调试运行结束后等待编程者按下键盘才返回编辑界面 , 即 任意键继续效果.下面 ...

  3. c语言使用free释放指针报错,C语言中的free函数用法执行机制分析

    free函数是C语言或者C++程序语言的常用函数,那么free函数有什么用途呢?free函数又怎么用呢?C语言中的free函数用法执行机制分析,一起来看看free内部的机制以及和delete的对比分析 ...

  4. 【define】你知道C语言中define的作用吗?

    文章目录 前言 一.define是什么? 二.define的作用 1.define定义符号 2.define定义宏 总结 前言 define是编程语言中一种重要的关键字,今天我为你们讲解其在C语言中的 ...

  5. c语言 编译开关用法,C语言中define的使用方法

    C语言中define的使用方法 学习了这么多年C语言,说实话对宏自以为了如指掌了,没想到看内核代码的时候还是那么吃力,设备驱动代码中有很多这样或者那样的宏定义,各种define都有哪些学习方法呢?以下 ...

  6. 单片机c语言的define,单片机C语言中define的妙用

    单片机C语言中define的妙用 最近一款产品调试时发现了问题,在一起检查一个小伙伴的C程序.问题不大,但暴露了一点问题. 比如:PORTB=0x23; //他的意思是把第5和第2位置1 可是你能一下 ...

  7. 单片机c语言define什么意思,单片机C语言中typedef和define的区别是什么?

    满意答案 vtj2011 推荐于 2019.09.30 采纳率:53%    等级:8 已帮助:263人 1) #define是预处理指令,在编译预处理时进行简单的替换,不作正确性检查,不关含义是否正 ...

  8. c语言数组中define,c语言中#define的用法

    c语言中#define的用法 C语言中,可以用 #define 定义一个标识符来表示一个常量.其特点是:定义的标识符不占内存,只是一个临时的符号,预编译后这个符号就不存在了. 预编译又叫预处理.预编译 ...

  9. C语言中const的用法

    C语言中const的用法 基本解释         const是一个C语言的关键字,它限定一个变量不允许被改变.使用const在一定程度上可以提高程序的健壮性,另外,在观看别人代码的时候,清晰理解co ...

最新文章

  1. hdu3786 Floyd或搜索 水题
  2. 模式识别之基础---使用纹理滤波器分割图像
  3. 【直播回放】如何准备计算机视觉的面试?
  4. VS2008 AJAX控件介绍
  5. python全栈开发学习_day1_计算机五大组成部分及操作系统
  6. 2016ICPC沈阳站
  7. java对类数组进行排序_Java比较器类对数组进行排序
  8. qt为lineedit添加背景图片代码_Qt中事件的理解(2)
  9. oracle 一个实例创建多个数据库_Oracle闪回,为你的数据库上一个安全防线
  10. python从入门到实践答案第四章_《python从入门到实践》--第四章基本操作列表 重点及课后练习...
  11. keras+tensorflow —— 可视化及tensorboard
  12. EMV(二)交易流程
  13. 最近网上比较火的虎年西游记金钱豹头像制作小程序源码
  14. 关于世博会的一些遐想!
  15. CF35C Fire Again
  16. Mac安装ACC提示“无法检查更新 请检查您的互联网连接,然后再试一次“解决方法
  17. 远程桌面树莓派【内网穿透】
  18. xampp mysql ssl_xampp搭建https服务器
  19. 计算机cpu和显卡的搭配要求,CPU和显卡怎么搭配好 显卡和CPU搭配有什么要求吗...
  20. 软件开发,web开发和应用程序开发的区别?

热门文章

  1. 大数——大数阶乘(hdu1042)
  2. PHP memory_get_usage()管理内存
  3. Python——为什么要在意:模块重载
  4. 【anaconda】激活环境失败-bash: activate:No such file/没有那个文件或目录
  5. s2 理论 第二套题
  6. c#winform演练 ktv项目 播放歌曲同时显示歌曲名称与歌手
  7. linux-文件的删除与创建
  8. 数据结构与算法-列表相关时间复杂度
  9. django-视图函数 00
  10. Elasticsearch 搜索数组字段