scanf()和fscanf()之间有什么区别?

时间:2011-04-04 02:09:56

标签: c

scanf()和fscanf()有什么区别?

感谢

5 个答案:

答案 0 :(得分:9)

scanf()fscanf()完全相同,stdin为第一个参数。

答案 1 :(得分:8)

对于scanf(),您始终从标准输入读取,而fscanf()则指定文件输入流。

比较

int  scanf ( const char * format, ... );
int fscanf ( FILE * stream, const char * format, ... );

答案 2 :(得分:2)

只是google it(强调我的):

  

http://www.cplusplus.com/reference/clibrary/cstdio/scanf/

int  scanf ( const char * format, ... );
     

stdin

中读取格式化数据

并且

  

http://www.cplusplus.com/reference/clibrary/cstdio/fscanf/

int fscanf ( FILE * stream, const char * format, ... );
     

中读取格式化数据

答案 3 :(得分:0)

来自fscanf(3)联机帮助页的第三段:

   The scanf() function reads input from the standard input stream
   stdin, fscanf() reads input from the stream pointer stream, and
   sscanf() reads its input from the character string pointed to by
   str.

您可能从SYNOPSIS

中猜到了这一点
   int scanf(const char *format, ...);
   int fscanf(FILE *stream, const char *format, ...);

:)

答案 4 :(得分:-3)

scanf():从I / O到内存的数据传输(变量) fscanf():数据传输从内存(变量)到文件。