當前位置:首頁 » 編程語言 » c語言fscanf的返回值
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言fscanf的返回值

發布時間: 2022-01-20 05:35:19

c語言fscanf用法

#include<stdio.h>
#include<stdlib.h>
intmain()
{
FILE*fp;
intid;
charstu;
if((fp=fopen("c:/stu.txt","w+"))==NULL)
{
printf("打開文件,出現錯誤");
exit(1);
}
scanf("%d%s",&id,&stu);
fprintf(fp,"%d %s",id,&stu);
id=0;
stu=0;
rewind(fp);//寫完之後不能馬上讀,需要重置fp到文件頭
fscanf(fp,"%d%s",&id,&stu);//少了&
printf("%d %s",id,stu);
return0;
}

Ⅱ c語言中的fscanf()函數

fprintf(fp,"%s,%c,%d,%f",str,a, c, b); 這個輸出格式表明 你的文件1.txt 里的數據 是用 逗號 分 隔。
if((fp = fopen("1.txt","r"))==NULL) 你要打開 讀 這個 用 逗號為 分隔符 的文件。

fscanf(fp,"%s,%c,%d,%f", str, &a, &c, &b);
漏寫 str, 給你補上,但 這仍不能解決 %s, 的逗號分隔問題。

必須 用下面格式讀取逗號分隔的數據:
fscanf(fp,"%[^,],%c,%d,%f", str, &a, &c, &b);
======================================

假如文件里的數據 用 空白 分隔,不用 逗號,日子就好過得多:
fprintf(fp,"%s %c %d %f",str,a, c, b);
fscanf(fp,"%s %c %d %f", str, &a, &c, &b);

Ⅲ c中fscanf返回值說明下

:int fscanf( FILE *stream, const char *format, ... );
函數fscanf()以scanf()的執行方式從給出的文件流中讀取數據. fscanf()的返回值是事實上已賦值的變數的數,如果未進行任何分配時返回EOF.

Ⅳ C語言中fscanf()函數

fscanf(stdin,"%s%s%s",&s1,&s2,&s3);
C語言中輸入數據,都是要加取地址符的親……

Ⅳ (c語言)文件相關函數的返回值

fgetc():成功時返回讀入的位元組數。錯誤或文件尾時返回EOF;
fputc():成功時返回寫入的位元組數。錯誤時返回EOF;
fgets():成功時返回字元串地址,錯誤或0讀入時返回NULL;
fputs():成功時返回一個非負整數,錯誤時返回EOF
fprintf():成功時返回寫入的位元組數,錯誤時返回負數(negative value)
fscanf():返回正確讀入項目(items)的個數,錯誤時返回EOF
fwrite():返回正確寫入項目的個數,錯誤時返回0
fread():返回正確讀入項目的個數,錯誤時返回0
fseek():成功返回0,錯誤返回-1。

Ⅵ fscanf返回什麼值

1.返回實際讀取的數據個數,出錯或者到結尾返回EOF。
函數原型:
DWORD GetMoleFileName(
HMODULE hMole,
LPTSTR lpFilename,
DWORD nSize
);
2.函數參數說明:
hMole HMODULE 裝載一個程序實例的句柄。參數為NULL,函數返回當前應用程序全路徑。lpFileName LPTSTR 是存放返回內存塊的指針,是輸出參數DWORD ,裝載到緩沖區lpFileName的最大值,strcat是將szBuf與後邊的值連接起來。

Ⅶ 求c語言大神!!!關於fscanf讀取字元串不解!!!為什麼fscanf返回值都是1

逗號不能作為字元串的分隔符,如果可能的話,將文件中的逗號替換為空格,這樣就可以達到你的目的了。

Ⅷ C語言fscanf的用法是什麼

用 法: int fscanf(FILE *stream, char *format,[argument...])。

1、fscanf()的format參數允許的格式為:「%[*][width][modifiers]type」。[]中的內容根據需要供選,可預設,%type必須要有,不可省。

2、「format」是C字元串,由「空格」、「非空格」及「轉換符」組成。具體格式為%[*][width][modifiers]type,與「format」中「轉換符」對應變數地址的列表,兩地址間用逗號隔開。

fscanf()對空格的處理示例代碼如下:

re=fscanf(pF,"%d%d%d",&oLine.p,&oLine.l,&oLine.x);
if(3==re){
//Printonstdout
printf("%d %d %d ",oLine.p,oLine.l,oLine.x);
}

Ⅸ c語言中,成功調用fprintf fscanf函數後有什麼返回值嗎

當然有。樓主可看MSDN有詳細描述,

fscanf, fwscanf
Read formatted data from a stream.
int fscanf( FILE *stream, const char *format [, argument ]... );
int fwscanf( FILE *stream, const wchar_t *format [, argument ]... );

Return Value // 也就是正常會返回從文件成功寫入的變數個數,否則返回EOF
Each of these functions returns the number of fields successfully converted and assigned; the return value does not include fields that were read but not assigned. A return value of 0 indicates that no fields were assigned. If an error occurs, or if the end of the file stream is reached before the first conversion, the return value isEOFfor fscanf orWEOFforfwscanf.

fprintf, fwprintf
Print formatted data to a stream.
intfprintf(FILE*stream,constchar*format[,argument]...);
intfwprintf(FILE*stream,constwchar_t*format[,argument]...);

Return Value // 也就是正常會返回寫入文件的位元組數,否則返回負數
fprintfreturns the number of bytes written.fwprintfreturns the number of wide characters written. Each of these functions returns a negative value instead when an output error occurs.

Ⅹ 求C語言 fscanf的用法,

你的理解錯了,這是將文件中的數據輸入到程序中的變數,這個函數是一個輸入函數,參考sscanf用法。
sscanf示例如下,得到n=1,sz="asdf"
{
char* str = "1 asdf";
int n;
char sz[10];
sscanf(str, "%d%s", &n, &sz);
printf("%d %s", n, sz);
}
fscanf示例如下,加入pf是指向文件內容為1 asdf的文件指針,得到n=1,sz="asdf"
{
int n;
char sz[10];
sscanf(pf, "%d%s", &n, &sz);
printf("%d %s", n, sz);
}