fscanf函数的用法

数学2023-01-29 12:41
用法:int fscanf(FILE*stream,char*format,[argument...]);解析:int fscanf(文件指针,格式字符串,输入列表);返回值: 类型是整型,成功读入的参数的个数。新建data.txt文件,存入3组坐标,运行程序并输出结果。

用法:int fscanf(FILE*stream,char*format,[argument...]);解析:int fscanf(文件指针,格式字符串,输入列表);返回值: 类型是整型,成功读入的参数的个数。新建data.txt文件,存入3组坐标,运行程序并输出结果。

fscanf函数的用法

fscanf函数的用法

fscanf第一个参数需要一个文件指针,为了查看实验效果,这里先新建一个名为test.txt的文本文件,放在源代码的文件夹,输入如下内容:

123

123.456

Hello world !

要对文件操作,必须将该文件打开:

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

同时使用完毕后不要忘记使用fclose关闭文件。

test.txt第一行保存的是一个整数,所以可以使用fscanf先读取一个整数:

fscanf(fp, "%d", &num);

test.txt第二行保存了一个浮点数,按照浮点数的格式进行读取:

fscanf(fp, "%f", &fNum);

需要注意的是,由于浮点数位于第二行,所以要想读取这个浮点数,应当先把第一个数读完,否则读取的回事123.000000

同样可以使用类似的方法读取位于第三行的字符串:

fscanf(fp, "%s", str);

但是,从程序的运行结果发现,第三行存储的是Hello world !,而实际运行结果只有“Hello”,这表明fscanf遇到空格会终止本次读操作。

当将fscanf第一个参数设定为stdin时,将实现和scanf函数相同的效果:

fp = stdin;//设置fp为标准输入

fscanf(fp, "%d", &num);//从fp读取一个整数