今日内容:学习了有关指针的一部分内容
自己尝试进行基础通讯录的编写
预处理:#include<stdio.h> 在系统指定目录寻找(主要用于库函数)
#include"stdio.h" 在当前目录寻找(主要用于自写函数)
define:定义宏函数 #define out printf("aaaaa");
#define p(s) printf("%d\n",s); 宏只做简单的替换,写的时候要多加括号
自定义函数和宏函数的区别: 优点 缺点
宏 不占空间 浪费时间、没有语法检查
自定义 有语法检查 浪费空间
指针: 指针的长度都为4个字节 *定义时表示指针类型 int *p=&a
使用时表示从地址中取值 *p=100
int *p=NULL 表示将指针定义为空指针
int *p 表示将指针定义为野指针,指向不能使用的字节
各种类型与0比值的方法
int if(n==0)/ if(n!=0)
float const float EOSINON=0.00001;
if ((n>-EPSINON)&&(n<EPSINON))
bool if(flag) / if(!flag)
指针 if(n==NULL) / if(n!=NULL)
指针的使用步骤:1定义指针变量
2给指针变量附地址
3使用
malloc函数用来向系统申请空间
int *p;
fp=malloc(sizeof(数据类型)*n) n为需要多少个字节
在使用时要进行强制类型转换,因为返回值是一个无类型的值 fp=(int *)malloc(sizeof(类型)*n)
一般在结束时要进行判断,if(NULL==fp),因为如果地址不够,无法分配给你,就会返回空值;fp就会是一个空指针
free(fp)用于释放我们为fp申请的空间
指针数组:类型为数组,元素为指针,指针指向内容
char a【20】;
a={“aaaaaaaaa”};不合法
因为a是一个指针,是一个常指针,不能修改
空指针使用前要先向系统申请空间