float a
char srt[10]
&a 和 str都是地址
scanf()是读取单词 gets()读取字符串
缓冲:
完全缓冲 缓冲区满的时候才被清空,内容被发送到目的地 比如文件输入
行缓冲 遇到换行清空缓冲区
文件结尾:
文件尾部添加 Ctrl+Z 字符来标志结尾
系统存储文件大小
c getchar() 返回EOF #define EOF (-1)
-----------------------------------------------------------------
指针操作: 6种基本操作
指针的值(指针指向的地址) 、指针指向地址中存储的内容、指针本身的地址
& 地址运算符 取出地址
int dates[y], *pti;
pti = dates;
pti= &dates[0];
* 间接运算符 寻址,然后取出数值
指针+1
实际上是增加所指定数据类型的一个数量 比如 int a[] ,a++ 。a增加一个int大小
指针和多维数组:
(1
int zippo[4][2] // 整数数组 的数组
zippo 等于 &zippo[0] // 包含两个整数的数组 第一个数组的地址
zippo &zip[0][0] // 第一个数的地址
zipp0 zippp[0] //
(2
指针地址+1 ,这里的zippo和zippo[0]+1,两者的效果是不一样的
(3
指针取值,可以通过*或索引[]
*(zippo[0]) 等于 zippo[0][0]
*zippo &zippo[0][0]
**zippo *&zippo[0][0]
zippo是地址的地址
地址的地址或指针的指针
char srt[10]
&a 和 str都是地址
scanf()是读取单词 gets()读取字符串
缓冲:
完全缓冲 缓冲区满的时候才被清空,内容被发送到目的地 比如文件输入
行缓冲 遇到换行清空缓冲区
文件结尾:
文件尾部添加 Ctrl+Z 字符来标志结尾
系统存储文件大小
c getchar() 返回EOF #define EOF (-1)
-----------------------------------------------------------------
指针操作: 6种基本操作
指针的值(指针指向的地址) 、指针指向地址中存储的内容、指针本身的地址
& 地址运算符 取出地址
int dates[y], *pti;
pti = dates;
pti= &dates[0];
* 间接运算符 寻址,然后取出数值
指针+1
实际上是增加所指定数据类型的一个数量 比如 int a[] ,a++ 。a增加一个int大小
指针和多维数组:
(1
int zippo[4][2] // 整数数组 的数组
zippo 等于 &zippo[0] // 包含两个整数的数组 第一个数组的地址
zippo &zip[0][0] // 第一个数的地址
zipp0 zippp[0] //
(2
指针地址+1 ,这里的zippo和zippo[0]+1,两者的效果是不一样的
(3
指针取值,可以通过*或索引[]
*(zippo[0]) 等于 zippo[0][0]
*zippo &zippo[0][0]
**zippo *&zippo[0][0]
zippo是地址的地址
地址的地址或指针的指针