函數
$?代表返回值
函數變量作用域
默認是全局變量。如果你想它變成局部變量,就加一個 local後加空格加變量名
IO編程P149
文件類型
-
常規文件 r
-
目錄文件 d
-
字符設備文件 c
-
塊設備文件 b
-
管道文件 p
-
套接字文件 s
-
符號鏈接文件 l
流 ——FILE結構體
-
文本流
-
二進制流
流的緩衝
-
全緩衝
-
行緩衝 遇到\n時,或和一個終端關聯時
-
無緩衝
P150
FILE*fopen(const char *path,const char *mode) //打開流,返回指針,出錯返回NULL
流的打開方式:(b表示二進制,Linux忽略)
#include <stdio.h>
r rb //只讀,文件必須存在
r+ r+b //讀寫,文件必須存在
w wb //只寫,若文件存在,則清空文件,文件不存在則創建
w+ w+b //讀寫
a ab //只寫,若文件存在,則所寫加文件末尾,文件不存在則創建
a+ a+b //讀寫
umask //修改權限
extern int errno; //errno存放錯誤號
void perror(const char *s); //perror先輸出字符串s,再輸出錯誤號對應的錯誤信息
char *strerror(int errno); //strerror根據錯誤號返回對應的錯誤信息
int fclose(FILE *stream) //關閉流,調用:fclose();成功返回0,失敗返回eof,並設置errno
按字符輸入輸出P151
讀寫流
fgetc(FILE *stream)/fputc(字符,文件) //一次讀/寫一個字符 ,沒有了返回EOF -1
fgets(FILE *stream)和fputs(str,length,FILE)//一次讀/寫一行
fread(FILE *stream)/fwrite() //每次讀/寫若干個對象,而每個對象具有相同的長度