檔案:
檔案的分類:
文字檔案: 一開啟就能看懂的檔案
二進位制檔案:一開啟是亂碼的東西,或者說全是二進位制數字的檔案叫二進位制檔案。
檔案流:就是將檔案一段一段的載入,然後進行讀取,比如看電視下面的載入欄
檔案操作的步驟:
開啟檔案
操作檔案
關閉檔案
怎麼用**的方式開啟檔案?
fopen函式:
fopen(路徑,操作方式)
路徑:絕對路徑:檔案的全路徑
相對路徑:相對於檔案當前的路徑
r: 唯讀,如果檔案不存在,那就返回null
w: 只寫,如果檔案存在,則會覆蓋原來的檔案,如果不存在,則會建立。
a: 追加,如果檔案存在,則會在後面追加原來的文字內容,如果檔案不存在,則會建立。(不管存在,不存在最終都會返回文字指標)
r+: 只是在r的基礎上增加了寫的功能
w+: 只是在w的基礎上增加了讀的功能
a+: 只是在a的基礎上增加了讀的功能
t: 文字檔案
b: 二進位制檔案
注意:在mac或linux或unix下,文字檔案和二進位制檔案是一樣的
在windows下有區別,寫入的是文字檔案,會把所有的\n替換成\r\n,二進位制檔案不會替換。
2)幾個函式的使用方法:
fgetc與fputc函式
fgetc函式:讀取乙個字元
fputc函式:寫入乙個字元
#include
#include
void writetest()
fclose(fp);}*/
}int main(int argc, const
char * argv) ;
// fgets(str, 3, fp); //這裡的3 實際還要留乙個空格給'\0',所以讀取的是he。
// //用迴圈怎麼讀取呢
// 這是乙個手動的讀取部分
// printf("%s",str);
//
while(1)
printf("%c",ch);
}fclose(fp);
}return0;}
3)fgets 和fputs的使用
fgets 和 fputs 函式
fgets :讀取乙個字串
fputs: 輸入乙個字串
#include
int main(int argc, const
char * argv)
*///寫入字串
file *fp=fopen("/users/huanglichao/desktop/3.txt", "r");
if(fp) ;
// fgets(str,4, fp);//這裡的4,實際得到是3,要留乙個位置給'\0'。
//
// printf("%s\n",str);
// 怎麼用迴圈的方式讀取字串返回0 代表字串還未到末尾
//這裡
feof(fp)
返回1
代表字串到末尾
while(1)
char
str[
50];//這裡的字串每次都會被覆蓋,可以用斷點檢視。
fgets(str, 10, fp);
printf("%s",str);
}fclose(fp);
}return0;}
4)fprintf 和fscanf使用:
fprintf (變數指標,"格式控制符",引數列表)
fscanf(變數指標,"格式控制符",位址列表)
#include
void testfprintf()
}int main(int argc, const
char * argv) ;
char str2[50];
fscanf(fp, "%s\n%s",str,str2);
puts(str);
puts(str2);
fclose(fp);}*/
return0;}
5)fread 和write函式的使用:
// fread和fwrite函式
#include
#include
int main(int argc, const
char * argv) ;
// fread(str, 1, 100, fp); 它只關心具體讀的位元組數,不會關心這些自己裡面有沒有換行
// printf("%s",str);
// 讀
file *fp =fopen("/users/huanglichao/desktop/3.txt", "w");
if (fp)
return0;}
菜鳥之路 02
1 switch 語句的基本形式 switch 表示式 語義 先得出表示式的結果,根據結果跳轉到相應的case語句塊裡面去執行 表示式結果 常量表示式 就叫相應的case語句塊 如果case 後面的常量表示式沒有乙個跟表示式結果對應的 那麼就跳轉到 default裡面執行語句塊n switch語句的...
菜鳥之路 03
1 全域性變數和區域性變數的程式 include inta 10 全域性變數,在所有的函式內都能被使用,等程式結束後值才會被釋放 void test int main int argc,const char argv 內使用,當執行完 塊後值會被釋放。當和全域性變數重名時,那麼在它這個函式裡,會暫時...
菜鳥之路 05
1 二維陣列的定義 二維陣列中每乙個元素都是乙個陣列,稱之為二維陣列。int 稱之為三維陣列依次類推 三維陣列中的每個元素都是乙個二維陣列 int nums 2 3 2 三維陣列可以看做立體,每個元素是個面,面裡面有行有列 2 二維陣列的介紹 型別 arr col row row sizeof ar...