C講課筆記文件

      網友投稿 832 2022-05-28

      文章目錄

      一、文件打開與關閉

      (一)概述

      (二)文件打開函數 - fopen()

      1、調用格式

      2、參數與返回值說明

      3、文件使用方式

      (二)文件關閉函數 - fclose()

      1、調用格式

      2、參數說明

      二、文件讀寫函數

      三、案例演示

      1、編寫程序 - 演示文件讀寫.c

      2、運行程序,查看結果

      四、課后作業

      任務:將C盤Windows目錄下的win.ini文件復制到D盤根目錄,同時在控制臺輸出該文件內容。

      本次我們準備學習C語言中的文件操作。內存里的數據要持久保存,那么就必然會涉及到文件的讀寫操作。這也是C語言學習中比較重要的一部分內容,希望大家理解并掌握。

      一、文件打開與關閉

      (一)概述

      文件在進行讀寫操作之前要先打開,使用完畢要關閉。所謂打開文件,實際上是建立文件的各種有關信息,并使文件指針指向該文件,以便進行其它操作。關閉文件則斷開指針與文件之間的聯系,也就禁止再對該文件進行操作。在C語言中,文件操作都是由庫函數來完成的。

      (二)文件打開函數 - fopen()

      1、調用格式

      文件指針名 = fopen(文件名, 使用文件方式);

      2、參數與返回值說明

      “文件指針名”必須是被說明為FILE 類型的指針變量

      “文件名”是被打開文件的文件名

      “使用文件方式”是指文件的類型和操作要求

      “文件名”是字符串常量或字符串數組

      FILE *fp; fp = fopen("test.txt", "r");

      1

      2

      其意義是在當前目錄下打開文件test.txt,只允許進行“讀”操作,并使fp指向該文件。

      FILE *fp; fp = fopen("c:\test.jpg", "rb")

      1

      2

      打開C盤根目錄下文件test.jpg,只允許按二進制方式進行讀操作。兩個反斜線“\ ”中的第一個表示轉義字符,第二個表示根目錄。

      3、文件使用方式

      “rt”只讀打開一個文本文件,只允許讀數據

      “wt”只寫打開或建立一個文本文件,只允許寫數據

      “at”追加打開一個文本文件,并在文件末尾寫數據

      “rb”只讀打開一個二進制文件,只允許讀數據

      “wb”只寫打開或建立一個二進制文件,只允許寫數據

      “ab”追加打開一個二進制文件,并在文件末尾寫數據

      “rt+”讀寫打開一個文本文件,允許讀和寫

      “wt+”讀寫打開或建立一個文本文件,允許讀寫

      “at+”讀寫打開一個文本文件,允許讀,或在文件末追加數據

      “rb+”讀寫打開一個二進制文件,允許讀和寫

      “wb+”讀寫打開或建立一個二進制文件,允許讀和寫

      “ab+”讀寫打開一個二進制文件,允許讀,或在文件末追加數據

      在打開一個文件時,如果出錯,fopen將返回一個空指針值NULL。在程序中可以用這一信息來判別是否完成打開文件的工作,并作相應的處理。因此常用以下程序段打開文件:

      if ((fp = fopen("c:\test.jpg", "rb") == NULL) { printf("error on open c:\test.jpg file!"); getch(); exit(1); }

      1

      2

      3

      4

      5

      如果返回指針為空,表示不能打開C盤根目錄下的test.jpg文件,則給出提示信息“error on open c:\test.jpg!”,下一行getch()的功能是從鍵盤輸入一個字符,但不在屏幕上顯示。該行作用是等待,只有當用戶從鍵盤敲任一字符才繼續執行后續語句。exit函數返回非零值表示有錯誤發生。

      (二)文件關閉函數 - fclose()

      1、調用格式

      fclose(文件指針名);

      2、參數說明

      “文件指針名”必須是被說明為FILE 類型的指針變量。

      二、文件讀寫函數

      字符讀寫函數 :fgetc()和fputc()

      字符串讀寫函數:fgets()和fputs()

      數據塊讀寫函數:fread()和fwrite()

      格式化讀寫函數:fscanf()和fprintf()

      三、案例演示

      1、編寫程序 - 演示文件讀寫.c

      1

      2

      3

      4

      5

      6

      7

      8

      9

      10

      11

      12

      13

      14

      15

      16

      17

      18

      19

      20

      21

      22

      23

      C講課筆記:文件

      24

      25

      26

      27

      28

      29

      30

      31

      32

      33

      34

      35

      36

      37

      38

      39

      40

      41

      42

      43

      44

      45

      46

      47

      48

      49

      50

      51

      52

      53

      54

      55

      56

      2、運行程序,查看結果

      第一次運行,查看結果

      第二次運行,查看結果

      說明:因為寫文件采用的是追加方式,所以文件c:\love.txt里最后會有兩次次輸入的內容。

      四、課后作業

      任務:將C盤Windows目錄下的win.ini文件復制到D盤根目錄,同時在控制臺輸出該文件內容。

      控制臺

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:kinect內參數的標定
      下一篇:FusionInsight Kafka刪除Topic失敗原因及解決方案
      相關文章
      亚洲国产精品线在线观看| 国产亚洲人成A在线V网站 | 亚洲国产激情在线一区| 亚洲制服中文字幕第一区| 亚洲AV无码专区国产乱码电影 | 中文字幕日韩亚洲| MM131亚洲国产美女久久| 亚洲AV无码乱码在线观看性色扶| 久久久亚洲精华液精华液精华液| 亚洲人成网站999久久久综合| 精品国产成人亚洲午夜福利| 亚洲一区AV无码少妇电影| 亚洲制服丝袜中文字幕| 天天爽亚洲中文字幕| 中文有码亚洲制服av片| 亚洲精品无码专区在线播放| 亚洲精品国产第一综合99久久| 亚洲成a人无码亚洲成www牛牛 | 国产亚洲av片在线观看18女人 | 国产亚洲精aa成人网站| 久久久久亚洲AV无码专区桃色| 中文字幕中韩乱码亚洲大片| 亚洲色欲久久久综合网东京热| 亚洲精品无码mv在线观看网站| 亚洲va中文字幕无码久久| 久久久久亚洲精品美女| 99ri精品国产亚洲| 亚洲一级黄色大片| 亚洲一区二区三区成人网站| 久久亚洲中文无码咪咪爱| 亚洲国产成人影院播放| 最新精品亚洲成a人在线观看| 亚洲精品狼友在线播放| 亚洲AV日韩AV永久无码免下载 | 国产产在线精品亚洲AAVV| 亚洲精品天堂成人片?V在线播放| 亚洲精品99久久久久中文字幕 | 国产AV无码专区亚洲精品| 亚洲一区二区三区电影| 亚洲免费视频观看| 亚洲国产精华液2020|