码迷,mamicode.com
首页 > 其他好文 > 详细

fscanf函数用法及注意事项

时间:2015-01-04 22:38:17      阅读:343      评论:0      收藏:0      [点我收藏+]

标签:

/*FSCANF.C:This program writes formatted data to afile.It then uses fscanf to read the various databackfromthefile.*/
#include <stdio.h>
FILE *stream;
int main(void)
{
long l;
float fp;
char s[81];
char c;
stream=fopen("fscanf.out","w+");
if(stream==NULL)
printf("The file fscanf.out was not opened\n");
else
{
fprintf(stream,"%s%ld%f%c","a-string",
65000,3.14159,‘x‘);
/*Set pointer to beginning of file:*/
fseek(stream,0L,SEEK_SET);
/*Readdatabackfromfile:*/
fscanf(stream,"%s",s);
fscanf(stream,"%ld",&l);
fscanf(stream,"%f",&fp);
fscanf(stream,"%c",&c);
/*Output data read:*/
printf("%s\n",s);
printf("%ld\n",l);
printf("%f\n",fp);
printf("%c\n",c);
fclose(stream);
}
}
 
 

 

注意事项:

 fscanf(FILE * stream ,constchar*format, [argument...] );

如果argument为char* str时
str是一个指向字符串数组的指针,用来拷贝读取到的字符串
所以, 可以是 char s[128]
也可以是 char* s = (char *)malloc(128)

但不可以是 char* s; s没有指向有效的内存空间




FILE*fp;
 
char a[10];
 
int b;
 
double c;
 
fscanf(fp,"%s%d%lf",a,&b,&c)




printf("%g",4.5);//4.5
printf("%f",4.5);//4.500000
printf("%e",400.5);//4.5e+2

fscanf函数用法及注意事项

标签:

原文地址:http://www.cnblogs.com/mybabyyh/p/4202254.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!