c提供的预处理功能
1,宏定义
2,文件包含
3,条件编译
指令以及描述
#define 定义宏
#include 包含一个源代码文件
#undef 取消已定义的宏
#ifdef 如果宏已经定义,则返回真
#ifndef 如果宏没有定义,则返回真
#if 如果给定条件为真,则编译下面代码
#else #if 的替代方案
#elif 如果前面的 #if 给定条件不为真,当前条件为真,则编译下面代码
#endif 结束一个 #if……#else 条件编译块
#error 当遇到标准错误时,输出错误消息
#pragma 使用标准化方法,向编译器发布特殊的命令到编译器中
比较重要的两个:#include,#define(都不需要加;)
什么时候用#define 当有一个变量,需要在全文中涉及时,则可以用此,且在更改变量时也好更改 如#define pi 3.1415926
**自己会搞混的指针类型:**实参和形参
函数的参数传递(1)变量传递:把变量的值copy到形参中,对形参的操作,不影响原来的值。
`
void swap(int a, int b)
{
int t;
t=a;
a=b;
b=t;
}```
int x=3 y=4;
swap(x,y);
此函数执行后,该x y不变
(2)地址传递:对
void swap (int*a,int*b)
{
int t;
t=*a;
*a=*b;
*b=t;
}
```int x=3 y=4;
swap(&x,&y)
引用swap 执行次函数 x,y 的值会发生变化