91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

庫函數文件,創建、打開、讀寫、刪除、操作實現

發布時間:2020-08-28 23:48:57 來源:網絡 閱讀:445 作者:TheRoodToDeath 欄目:系統運維

庫函數-文件訪問

上一個博文主要講了系統調用,接下來就開始庫函數調用講解。

特點:C庫函數是獨立與操作系統平臺存在的,無論在nunixlinux,還是windows操作系統下庫函數調用都是一樣的。

 

一、打開文件

FILE*fopen(cons char*filename,const char*mode)

Filename:

打開的文件名;

Mode:

打開的模式;

 

常見的打開模式:

                    R rb 只讀方式打開

                    W wb 只寫方式打開,文件不存在,進行創建.

                    A,ab 追加方式打開,如果文件不存在,則創建文件

                    W+,w+bwh+只讀方式打開,如果文件不存在,則創建文件

                    A+ a+b ab+ 讀和追加的方式打開。如果文件不存在,則創建改文件

 

庫函數的創建和打開

b用于區分二進制文件

 

二、庫函數讀

Size_t fread(void*ptr,size_t size,size_t n,FILE*stream)

 

功能:

stream指向的文件中讀取n個字段,每個字段為size字節,并將讀取的數據放入ptr

所指向的字符數組中,返回實際已讀的字節數。

 

三、庫函數寫

Size_t fwrite(void*ptr,size_t size,size_t n,FILE*stream)

 

功能:

從緩沖區ptr所指向的數組中把n個字段寫到stream指向的文件中,每個字段長為size

的字節,返回實際寫入的字段數。

 

 

四、庫函數讀字符

從指定的文件中都一個字符

#include<stdio.h>

main ()

{

 

FILE *fp;

char ch;

if((fp=fopen(c1.txt,rt)==NULL)

{

printf(\nCANNOT open file strike any key exit);

getch();

exit(1);

}

ch=fgetc(fp);  //獲取一個字符,并把字符賦值微微ch

 

wwhile(ch!=EOF)

{

putchar(ch);  //打印該字符

ch=fget(fp);  //繼續獲取改字符

 

 

}

fclose(fp);

 

 

}

 

 

五、庫函數寫字符

#include<stdio.h>

main ()

{

 

FILE *fp;

char ch;

if((fp=fopen(c1.txt,wt+)==NULL)

{

printf(\nCANNOT open file strike any key exit);

getch();

exit(1);

}

Printf(input a string:\n);

ch=getchar();  //獲取一個字符,并把字符賦值微微ch

 

while(ch!=\n)

{

fputch(ch,fp);  //寫字符

ch=getchar();  //繼續獲取如輸入的字符

 

}

Print(\n);

fclose(fp);

 

 

}

 

 

 

六、庫文件-格式化讀

FscanfFILE*streamchar *format[,argument.....]

#include <stdlib.h>

#include<process.h>

Void main(void)

{

Int i=10;

Double fp=1.5;

Char s[]=this is a string;

Char c =\n;

Stream=fopen(fprintf.out,w); //打開以后執行的操作都在函數里面了

Fprintf(stream,%s%c,s,c);  //第一個寫入的是字符串,第二個是char

Fprintf(stream,%d\n,i);

 

Fprintf(stream,%f\n,fp);  //浮點型額類型

Fclose(steam);   //關閉指向文件寫入

}

 

 

第七、庫函數定位

Int fseekFILE*streamlong offset,int whence

Whence:

SEEK_set 從文件頭開始搜索

SEEK_CUR從當前的位置搜索

SEEK_END 從文件結束處開始搜索

 

 

第八、路徑獲取

在編寫程序的時候,有時候需要知道路徑。

Char *getcwdchar*buffersize_t size

上面定義一個size大小的buffergetcwd會把當前的路徑名copy

buffer中,如果buffer太小,函數會返回-1.

 

路徑獲取實現:

#include<unistd.h>

Main()

{

Char buf[80];

Getcwd(buf,sizeof(buf));

Printf(current working dirctory :%sn,buf);

 

}

第九、創建目錄

#include<sys/stat.h>

Int mkdir (char*dirint mode)

功能:

創建目錄

返回值:表示成功,-1表示出錯。

 

在和linuxshell下的操作命令一樣

#mkdir hello Scripts

 

 

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

芒康县| 贡嘎县| 鄯善县| 连江县| 封丘县| 红原县| 鹿邑县| 郁南县| 博罗县| 海伦市| 敦煌市| 保康县| 武川县| 犍为县| 乌拉特前旗| 界首市| 汉寿县| 边坝县| 扎兰屯市| 上林县| 洛扎县| 伊吾县| 肥乡县| 松潘县| 贵定县| 阜新| 南开区| 江油市| 山东省| 浏阳市| 阜宁县| 永嘉县| 静宁县| 商河县| 徐水县| 六盘水市| 松潘县| 东明县| 枣强县| 沧源| 吴川市|