C库函数标准编程之fscanf()函数解读及其实验
来源:互联网 发布:windows核心编程下载 编辑:程序博客网 时间:2024/06/04 20:01
函数功能
fscanf()函数用于从参数stream的文件流中读取format格式的内容,然后存放到...所指定的变量中去。字符串以空格或换行符结束(实验1中会对它进一步说明)
函数格式
字符格式说明
关于输入输出
(stdin、stdout、stderr)启动一个C语言程序时,操作系统环境负责打开三个文件,并将这3个文件的指针提供给该程序。这3个文件分别为标准输入(stdin)、标准输出(stdout)、标准错误(stderr)。它们在<stdio.h>中声明,大多数环境中,stdin指向键盘,stdout、stderr指向显示器。之所以使用stderr,若因某种原因造成其中一个文件无法访问,相应的诊断信息要在该链接的输出的末尾才能打印出来。当输出到屏幕时,这种处理方法尚可接受,但如果输出到一个文件或通过管道输出到另一个程序时,就无法接受了。若有stderr存在,即使对标准输出进行了重定向,写到stderr中的输出通常也会显示在屏幕上。exit():在主程序main中,语句return expr等价于exit(expr)。但是,函数exit有一个优点,它可以从其他函数中调用,并且可以用查找程序查找这些调用。exit(0)为正常退出,exit(1)只要里面的参数不为零,为非正常退出。
fscanf()与scanf()的区别
fsanf()函数用于从文件流中读取数据,scanf()函数用于从标准输入(键盘)中读取数据。如果将fscanf()函数内文件流指针设为stdin,这时候可以替代scanf()函数。
实验1
功能:读取键盘输入的内容并输出到屏幕上
源程序:
#include<stdio.h>main(){ char str[20]; //存放输入的字符串 printf("Please Input string: "); //将键盘输入的内容,以字符串%s的格式存放到str中去 fscanf(stdin,"%s",str); printf("You have input:%s\n",str);}
执行结果:
分析:由执行结果可以看出,第一次输入“Hello World”时,输出为“Hello”,这是因为fscanf()函数遇到空格或者换行时结束。为了排除存放字符数组的内存长度不够的原因,第二次输入“HelloWorld”时,输出结果为“HelloWorld”。可以看出fscanf()函数确实是遇到空格或者换行时结束。
实验2
功能:读取字符串和数字,再输出到屏幕。
源程序:
#include<stdio.h>main(){ char str[20]; //存放输入的字符串 int a;//存放输入的整形数据 printf("Please Input : "); //将键盘输入的内容,以字符串%s的格式存放到str中去 fscanf(stdin,"%s%d",str,&a); printf("字符串内容为:%s\n",str); printf("整形数据为:%d\n",a);}
执行结果:
- C库函数标准编程之fscanf()函数解读及其实验
- linux系统编程之基础必备(二):C 标准IO 库函数与Unbuffered IO函数
- linux系统编程之基础必备(二):C 标准IO 库函数与Unbuffered IO函数
- C语言编程常见问题解答之标准库函数(1)
- C语言编程常见问题解答之标准库函数(2)
- C语言标准库函数之qsort排序函数
- C语言初学之fscanf()函数理解
- 15:文件操作(C标准库函数)fopen/fclose/fread/fwrite/fseek/fprintf/fscanf
- C语言标准库函数 qsort函数详解
- C标准库函数实现之字符串操作
- C标准库函数实现之strstr
- Linux编程基础:C标准IO库函数与Unbuffered IO函数
- 文件编程之C库函数
- C标准库函数浅析
- C标准库函数(a)
- .调用标准C库函数
- c标准库函数
- C标准库函数浅析
- C语言栈帧
- 《计算机视觉》总结2
- 高手分享:善用组策略禁止不明U盘使用_xitongshoucang.com
- 在优化SQL语句中使用虚拟索引
- c#读取写入文本文件
- C库函数标准编程之fscanf()函数解读及其实验
- SSL协议与数字证书原理
- 八大排序算法总结
- FORM中使用onSubmit="return false"防止表单自动提交,以及submit和button提交表单的区别
- AATCC 美国纺织化学师与印染师协会标准
- 启动 Eclipse 弹出“Failed to load the JNI shared library jvm.dll”错误的解决方法!
- 使用命令查看spfile<sid>.ora中的内容
- mybatis学习
- myeclips快捷键使用