目录

6.1 include命令

6.2 define命令


6.1 include命令

include命令是编译预处理的文件包含命令,其功能是把指定的文件插入到该命令行位置取代该命令行,从而把指定的文件和当前的源程序文件连成一个程序文件。

C语言系统提供了功能强大的库函数,如输入输出函数、数学运算函数、图形处理函数、文件操作函数等,这些库函数的说明信息分门别类地放在不同的头文件中。如下表所示:

库函数及头文件简表
序号 函数类别 函数举例 头文件名称
1 输入输出函数 输入函数scanf()、输出函数printf() stdio.h
2 数学运算函数 平方根函数sqrt()、正弦函数sin() math.h
3 字符串操作函数 计算字符串长度函数strlen() stdlib.h、string.h
4 字符判别函数 判别字母字符函数isalpha() ctype.h
5 文件操作函数 打开文件函数fopen()、关闭文件函数fclose() stdio.h
6 内存管理函数 释放内存函数free() stdlib.h、alloc.h
7 图形处理函数 画圆函数circle() graphics.h

C语言规定,要使用库函数必须先行说明,说明的方法是使用include命令包含相关的头文件。include命令的一般使用形式如下:

#include<文件名>        或者        #include "文件名"

使用双引号则表示首先在当前的源文件目录中查找要包含的文件,若未找到该文件,则到包含文件目录中查找;使用尖括号表示在包含文件目录中查找,而不在源文件目录查找。

拓展:如果要在一个源程序中使用其他用户文件代码,也可以使用include命令把要使用的文件包含进来。

6.2 define命令

define命令称为编译预处理的宏定义命令,其最常用的功能是定义符号常量。

简单宏定义的一般格式为:#define 宏名 宏体

当用其定义符号常量时,可简化格式为:#define 符号常量名 常量

在程序设计中,有时需要多次用到某些常量,或者有些常量在程序中特别关键,就可以将这些常量定义为符号常量,这样在编写和修改程序时会更加方便。C语言的符号常量须在函数体之外进行定义,也只有定义之后才能使用。

使用宏定义后,在编译预处理阶段,系统就把程序中的宏名替换为宏体,这替换过程称为“宏替换”,宏替换是对宏体字符串的原样照搬。

关于宏定义的说明:

(1)由于在C语言程序中习惯使用小写形式的变量名,为有所区别,宏名一般使用大写形式。但须明确,使用大写形式的宏名仅仅是一种习惯。

(2)宏定义是用宏名来表示一个字符串,在宏替换时又以该字符串取代宏名,这只是种简单的替换, 预处理程序对它不作任何检查。如有错误,只能在编译宏替换后的源程序时发现。

(3)宏定义不是C语句,后面不能有分号。如果加入分号,则加入的分号将作为宏体的一部分。

(4)通常把#define命令放在一个文件的开头使用。

C语言学习笔记(6)——常用宏命令相关推荐

  1. 梓益C语言学习笔记之链表&动态内存&文件

    梓益C语言学习笔记之链表&动态内存&文件 一.定义: 链表是一种物理存储上非连续,通过指针链接次序,实现的一种线性存储结构. 二.特点: 链表由一系列节点(链表中每一个元素称为节点)组 ...

  2. Python学习笔记:常用第三方模块3

    前言 最近在学习深度学习,已经跑出了几个模型,但Pyhton的基础不够扎实,因此,开始补习Python了,大家都推荐廖雪峰的课程,因此,开始了学习,但光学有没有用,还要和大家讨论一下,因此,写下这些帖 ...

  3. c语言学习笔记【结构体02】结构体指针变量与结构体变量的函数参数,C语言学习笔记结构体02结构体指针变量与结构体变量的函数参数.docx...

    C 语言学习笔记[结构体02]结构体指针变量与结构体变量 的函数参数 C 语言学习笔记之结构体指针变量一提指针,那可 是 C 语言的核心了,有多少学子曾拜倒在指针的脚下.单纯的说指针,其实并不难,但是 ...

  4. go get 拉取指定版本_go语言学习笔记-基础知识-3

    相关文档 go语言学习笔记-目录 1.简介 1.1 什么是GO Go 是一个开源的编程语言,它能让构造简单.可靠且高效的软件变得容易.Go是从2007年末由Robert Griesemer, Rob ...

  5. Ink脚本语言学习笔记(二)

    目前想要基于Ink脚本语言和Unity新的UIToolkit做一套对话系统,本文对Ink脚本语言的使用方式做一下介绍和总结 Ink脚本语言学习笔记(一) 二.缝合(Weave) 目前没想好怎么翻译这个 ...

  6. C语言学习笔记-P1 初识C语言(2)

    C语言学习笔记-P1 初识C语言(2) C语言学习笔记-P1 初识C语言(2) 一.常量 1.字面常量 2.const修饰的常变量 3.#define定义的标识符常量 3.枚举常量 二.字符串+转义字 ...

  7. R语言学习笔记(1~3)

    R语言学习笔记(1~3) 一.R语言介绍 x <- rnorm(5) 创建了一个名为x的向量对象,它包含5个来自标准正态分布的随机偏差. 1.1 注释 由符号#开头. #函数c()以向量的形式输 ...

  8. 【Go语言 · 学习笔记】

    文章目录 Go语言 · 学习笔记 一.Go包管理 1. 什么是Go语言中的包 2. 包的命名 3. main包 4. 导入包 5. 远程包导入 6. 命名导入 7. 包的init函数 二.Go开发工具 ...

  9. c语言计算时钟的夹角不用if,C语言学习笔记——计算时钟的夹角

    C语言学习笔记--计算时钟的夹角 题目内容: 钟面上的时针和分针之间的夹角总是在 0 -180之间 ( 包括 0 和180 ) .举例来说,在十二点的时候两针之间的夹角为 0 ,而在六点的时候夹角为1 ...

最新文章

  1. 10 个 Linux 中方便的 Bash 别名
  2. UVA 311 Packets
  3. python两个数据表中的对应数据相加
  4. POJ 3186Treats for the Cows(区间DP)
  5. JVM堆内存控制/分代垃圾回收
  6. Spring系列(十一):@Profile 注解用法介绍
  7. Python面试题大全(四):数据库篇
  8. 【英语学习】【Daily English】U02 Daily Routine L03 Tuesday night is curry night
  9. 1014.QxORM移植
  10. 孤零零好可怜的光棍节
  11. Asp.net(C#)利用File Field多文件上传
  12. sqlserver 2008完整安装教程
  13. 【老生谈算法】matlab实现拉普拉斯变换及其逆变换算法源码——拉普拉斯变换
  14. 教你win10忘记密码强制重置密码的方法
  15. matlab怎么新建m file,matlab2020如何建立m文件-matlab创建M-file文件的方法
  16. 关于淘宝和12306的分析
  17. 抛出异常关键字throw与定义异常关键字throws
  18. flink on yarn使用第三方jars的方法如何查看进程所持有jar包
  19. 基于数字电路交通灯信号灯控制系统设计-基于单片机病房温度监测与呼叫系统设计-基于STM32的无线蓝牙心电监护仪系统设计-基于STM32的智能蓝牙温控风扇控制设计-基于STM32的智能温室控制系统设计
  20. android设备操作(十一)

热门文章

  1. 智能余额代还款APP软件开发
  2. Java第三课:计算8+88+888...前10项之和
  3. 环材化生劝退文章汇总 2019.2
  4. java身份证工具类,身份证合法性校验,根据身份证获取生日、年龄、性别
  5. js合并相同元素的数组
  6. 在Mac上怎样自定义Safari起始页
  7. 5G+60倍超级变焦!vivo X30系列打造专业影像旗舰
  8. 规划和安装Exchange 2007
  9. (转)nginx应用总结(1)--基础认识和应用参数优化配置
  10. WinPcap编程【1】--编程环境的设置