
第31次课编译预处理命令位运算文件
第 31次课 编译预处理命令 位运算 文件

编译预处理命令----宏定义预处理命令是在编译之前,由预处理程序进行处理的一组命令。预处理命令均以开头,命令末尾不加分号。如#definePl3.1415926#include
预处理命令是在编译之前,由预处理 程序进行处理的一组命令。 预处理命令均以#开头,命令末尾不 加分号。 如 #define PI 3.1415926 #include 编译预处理命令-宏定义 1

编译预处理命令----宏定义例宏定义举例一、不带参数的宏定义#include 格式:#define PI 3.14159宏名替换文本#definemainO如 #define PI 3.1415926 float s,rv;scanf("%f",&r);功能:S=PI*r*r;系统预处理时,将用替换V=4.0/3*PI*r*r*r;文本替换程序中的所有宏名printf("%f%fln",s,v);(字符串中的宏名除外)
一、不带参数的宏定义 格式: #define 宏名 替换文本 如 #define PI 3.1415926 功能: 系统预处理时,将用替换 文本替换程序中的所有宏名 (字符串中的宏名除外) 。 例 宏定义举例 #include #define PI 3.14159 main() { float s,r,v; scanf("%f",&r); s=PI*r*r; v=4.0/3*PI*r*r*r; printf("%f %f\n",s,v); } 编译预处理命令-宏定义 1

将每个形参及整个替换文本#include 用圆括号括起来。#define S(x,y) x*ymain()#include float a,b,c;#define S(x,y) ((x)*(y))a=20; b=10;main()c=S(a+b,a-b);float a,b,c;printf(“ c=%fln” ,c); }a=20;b=10;替换过程为:c=S(a+b,a-b);S(a+b,a-b)→x*y → a+b*a-bprintf("c=%f/n",c);20+10*20-10→210宏替换是一种机械死板的替换
二、带参数的宏定义 格式: #define 宏名(形参表) 替 换文本 如 #define S(x,y) x*y 功能: 先用替换文本替换程序中 的宏名,再用实参替换形参。 #include #define S(x,y) x*y main( ) { float a,b,c; a=20; b=10; c=S(a+b,a-b); printf(“c=%f\n” ,c); } 替换过程为: S(a+b,a-b)→x*y → a+b*a-b →20+10*20-10 →210 将每个形参及整个替换文本 用圆括号括起来。 #include #define S(x,y) ((x)*(y)) main( ) { float a,b,c; a=20; b=10; c=S(a+b,a-b); printf("c=%f\n",c); } 宏替换是一种机械死板的替换

编译预处理命令--文件包含1、格式:
1、格式: #include 或 #include "文件名" 2、功能: 系统预处理时,将用被包含文件的内容 取代该include命令 。 如 #include 编译预处理命令-文件包含 2

编译预处理命令--文件包含#include“file2.c"file2.cBAAfile2.cfilel.cfilel.c
#include “file2.c” file1.c file2.c file1.c file2.c A B A 编译预处理命令-文件包含 2

2位运算---2V6401000000>200000111福5→→40000010100000100> : 16>>2<--700000111→200000010V
位运算 将参与的运算对象先转化为二进制数,然后再按位进 行相应的运算 运算符种类: 按位取反 ~: ~1 按位与 & : 5&7 按位或 | : 5|7 按位异或 ^:5^7 左移 > : 16>>2 位运算 3 00000101 >2 00000100 → 4

文件文件的概念文件:存储在外部介质上数据的集合,是操作系统数据管理的单位。·文件分类一按存储介质:·普通文件:存储介质文件(磁盘、磁带等)·设备文件:非存储介质(键盘、显示器、打印机等)-按数据的组织形式:·文本文件:ASCII文件,每个字节存放一个字符的ASCII码·二进制文件:数据按其在内存中的存储形式原样存放
4 文 件 文件:存储在外部介质上数据的集合,是操作系统数据 管理的单位。 •文件分类 –按存储介质: •普通文件:存储介质文件(磁盘、磁带等) •设备文件:非存储介质(键盘、显示器、打印机等) –按数据的组织形式: •文本文件: ASCII文件,每个字节存放一个字符的 ASCII码 •二进制文件:数据按其在内存中的存储形式原样存放 文件的概念

文件类型指针C语言中对文件的操作是通过文件指针来实现的文件类型是一个结构体类型,它的类型定义包含在stdio.h文件中。指针变量说明:FILE*fpi用法:■文件打开时,系统自动建立文件结构体,并把指向它的指针返回来,程序通过这个指针获得文件信息访问文件,文件关闭后,它的文件结构体被释放
文件类型指针 C语言中对文件的操作是通过文件指针来实现的, 文件类型是一个结构体类型,它的类型定义包含在 stdio.h文件中。 ◼ 指针变量说明: FILE *fp; ◼ 用法: ◼ 文件打开时,系统自动建立文件结构体,并把指向 它的指针返回来,程序通过这个指针获得文件信息, 访问文件 ◼ 文件关闭后,它的文件结构体被释放

文件类型指针文件名文件使用操作系统方式C程序文件类型指针磁盘
文件类型指针 文件名 文件使用 方式 文件类型指针 C程序 操作系统 磁盘