C语言学习笔记(6)——常用宏命令
目录
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)——常用宏命令相关推荐
- 梓益C语言学习笔记之链表&动态内存&文件
梓益C语言学习笔记之链表&动态内存&文件 一.定义: 链表是一种物理存储上非连续,通过指针链接次序,实现的一种线性存储结构. 二.特点: 链表由一系列节点(链表中每一个元素称为节点)组 ...
- Python学习笔记:常用第三方模块3
前言 最近在学习深度学习,已经跑出了几个模型,但Pyhton的基础不够扎实,因此,开始补习Python了,大家都推荐廖雪峰的课程,因此,开始了学习,但光学有没有用,还要和大家讨论一下,因此,写下这些帖 ...
- c语言学习笔记【结构体02】结构体指针变量与结构体变量的函数参数,C语言学习笔记结构体02结构体指针变量与结构体变量的函数参数.docx...
C 语言学习笔记[结构体02]结构体指针变量与结构体变量 的函数参数 C 语言学习笔记之结构体指针变量一提指针,那可 是 C 语言的核心了,有多少学子曾拜倒在指针的脚下.单纯的说指针,其实并不难,但是 ...
- go get 拉取指定版本_go语言学习笔记-基础知识-3
相关文档 go语言学习笔记-目录 1.简介 1.1 什么是GO Go 是一个开源的编程语言,它能让构造简单.可靠且高效的软件变得容易.Go是从2007年末由Robert Griesemer, Rob ...
- Ink脚本语言学习笔记(二)
目前想要基于Ink脚本语言和Unity新的UIToolkit做一套对话系统,本文对Ink脚本语言的使用方式做一下介绍和总结 Ink脚本语言学习笔记(一) 二.缝合(Weave) 目前没想好怎么翻译这个 ...
- C语言学习笔记-P1 初识C语言(2)
C语言学习笔记-P1 初识C语言(2) C语言学习笔记-P1 初识C语言(2) 一.常量 1.字面常量 2.const修饰的常变量 3.#define定义的标识符常量 3.枚举常量 二.字符串+转义字 ...
- R语言学习笔记(1~3)
R语言学习笔记(1~3) 一.R语言介绍 x <- rnorm(5) 创建了一个名为x的向量对象,它包含5个来自标准正态分布的随机偏差. 1.1 注释 由符号#开头. #函数c()以向量的形式输 ...
- 【Go语言 · 学习笔记】
文章目录 Go语言 · 学习笔记 一.Go包管理 1. 什么是Go语言中的包 2. 包的命名 3. main包 4. 导入包 5. 远程包导入 6. 命名导入 7. 包的init函数 二.Go开发工具 ...
- c语言计算时钟的夹角不用if,C语言学习笔记——计算时钟的夹角
C语言学习笔记--计算时钟的夹角 题目内容: 钟面上的时针和分针之间的夹角总是在 0 -180之间 ( 包括 0 和180 ) .举例来说,在十二点的时候两针之间的夹角为 0 ,而在六点的时候夹角为1 ...
最新文章
- 10 个 Linux 中方便的 Bash 别名
- UVA 311 Packets
- python两个数据表中的对应数据相加
- POJ 3186Treats for the Cows(区间DP)
- JVM堆内存控制/分代垃圾回收
- Spring系列(十一):@Profile 注解用法介绍
- Python面试题大全(四):数据库篇
- 【英语学习】【Daily English】U02 Daily Routine L03 Tuesday night is curry night
- 1014.QxORM移植
- 孤零零好可怜的光棍节
- Asp.net(C#)利用File Field多文件上传
- sqlserver 2008完整安装教程
- 【老生谈算法】matlab实现拉普拉斯变换及其逆变换算法源码——拉普拉斯变换
- 教你win10忘记密码强制重置密码的方法
- matlab怎么新建m file,matlab2020如何建立m文件-matlab创建M-file文件的方法
- 关于淘宝和12306的分析
- 抛出异常关键字throw与定义异常关键字throws
- flink on yarn使用第三方jars的方法如何查看进程所持有jar包
- 基于数字电路交通灯信号灯控制系统设计-基于单片机病房温度监测与呼叫系统设计-基于STM32的无线蓝牙心电监护仪系统设计-基于STM32的智能蓝牙温控风扇控制设计-基于STM32的智能温室控制系统设计
- android设备操作(十一)