fscanf函数用法及注意事项

/*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.5printf("%f",4.5);//4.500000printf("%e",400.5);//4.5e+2
时间: 2024-10-22 08:36:58

fscanf函数用法及注意事项的相关文章

memset函数用法及注意事项

头文件#include<cstring> ------------------------------------------ 在memset使用时要千万小心,在给char 以外 的数组赋值时,     只能初始化为0或者-1.    (看最后的0和1的补码)///////////      给bool类型数组可以初始化1------------------------------------------ 头文件#include<cstring>int arr[100];memse

PB SetFilter() 函数用法及注意事项

函数作用:为DataWindow或者DataStore指定数据过滤规则.通常在调用该函数前使用函数Retrieve将数据检索到客户端,该函数可以决定检索到客户端的这些数据哪些可以显示,哪些不能显示.该函数对客户端的数据进行操作,和后台数据库没有任何关系.在设置完过滤规则后使用函数Retrieve检索数据是不合理的,每次设置过滤规则后都检索数据,这样的执行效率很低.需要注意的是,该函数紧紧是设置过滤规则,并不进行过滤.函数Filter是进行过滤的,使用最近设置好的过滤规则对数据进行过滤.函数语法:

thinkphp中I(&quot;parm&quot;)用法的注意事项

php中用来传输的方式有两种$_GET 和 $_POST, thinkphp 提供了一种兼容两中传输方式的做法I(“param”) 但是请注意:在使用php中的函数时需要传入参数时不能用I(“parm”),必须使用采用的传输方式$_GET 或 $_POST传入,否则出错 thinkphp中I("parm")用法的注意事项,布布扣,bubuko.com

fprintf与fwrite函数用法与差异

在C语言中有两个常见的保存文件的函数:fprintf 与 fwrite.其主要用法与差异归纳如下: 一.fprintf函数. 1.以文本的形式保存文件.函数原型为 int fprintf(FILE* stream,const char* format,[argument]),用法类似于printf函数,返回值是输出的字符数,发生错误时返回一个负值. 2.对应的读取函数为fscanf().函数原型为int fscanf(FILE* stream,const char* format,[argume

assert()函数用法总结

assert()函数用法总结 assert宏的原型定义在<assert.h>中,其作用是如果它的条件返回错误,则终止程序执行,原型定义: #include <assert.h>void assert( int expression ); assert的作用是现计算表达式 expression ,如果其值为假(即为0),那么它先向stderr打印一条出错信息,然后通过调用 abort 来终止程序运行.请看下面的程序清单badptr.c: #include <stdio.h>

php中opendir函数用法实例

这篇文章主要介绍了php中opendir函数用法,以实例形式详细讲述了opendir函数打开目录的用法及相关的注意事项,具有一定的参考借鉴价值,需要的朋友可以参考下 本文实例分析了php中opendir函数用法.分享给大家供大家参考.具体如下: opendir语法:opendir(path,context) 目录,功能说明:打开目录句柄,opendir() 函数打开一个目录句柄,则该函数返回一个目录流,否则返回false.来看个opendir列出目录下所有文件实例,代码如下: $dirs ='.

Matlab中fscanf的用法

今天要用到Matlab 中的fscanf函数,上网找了一下终于明白了,现在自己写一下体会: 下面是fscanf()的主要应用syntax A = fscanf(fileID, format)A = fscanf(fileID, format, sizeA)[A, count] = fscanf(...)  %% returnsthe number of elements that fscanf successfullyreads. 现主要讲解主要用到的第二种形式: A = fscanf(file

assert()函数用法总结——转

assert宏的原型定义在<assert.h>中,其作用是如果它的条件返回错误,则终止程序执行,原型定义: #include <assert.h>void assert( int expression ); assert的作用是现计算表达式 expression ,如果其值为假(即为0),那么它先向stderr打印一条出错信息,然后通过调用 abort 来终止程序运行.请看下面的程序清单badptr.c: #include <stdio.h>#include <a

oracle trim函数用法详解

在oracle数据库中,trim一般都是用在删除字符串两边的空格.实际上,trim也可以用来删除字符串两边的指定字符.并且trim指定删除的字符串只能是单个字符Oracle TRIM函数是很常见的函数,下面对Oracle TRIM函数的语法作了详尽的阐述说明,希望可以让您对Oracle TRIM函数有更深的认识. 如果提到Oracle TRIM函数,最简单的功能就是使用它来去除字符串的行首和行尾的空格,这个功能也是大家使用频率最高的一种.然而Oracle TRIM函数其实是具有删除“任意指定”字