fprintf寫入字符串入文件/fread讀取文件內的字符串
阿新 • • 發佈:2017-09-24
ring ret clas pan name endif stdio.h col 錯誤
#include <stdio.h> #include <string.h> #include <stdlib.h> int main(void) { FILE *fp = NULL; char name[12] = "tom"; int age = 12; int ret = 0; char readName[12]; int readAge; // scanf("%s",name); //不能手動輸入字符串,會導致讀取不出來字符 // scanf("%d",&age); #if0 //字符串寫入文件 fp = fopen("./file","w"); if(!fp) { printf("fopen error!\n"); return -1; } //將字符串寫入fp指向文件 ret = fprintf(fp,"%s : %d\n",name,age); if(ret<0) //fprintf返回寫入字符數,發生錯誤,返回一個負值 { printf("fprintf error!\n"); return -1; } #elsefp = fopen("./file","r"); if(!fp) { printf("fopen error!\n"); return -1; } //讀取fp的內容,寫入name,age內 ret = fscanf(fp,"%s : %d",readName,&readAge); if(ret<0) //fprintf返回寫入字符數,發生錯誤,返回一個負值 { printf("scanf error!\n"); return -1; } printf("fscanf: name=%s,age=%d\n",readName,readAge); #endif free(fp); return 0; }
fprintf寫入字符串入文件/fread讀取文件內的字符串