文档章节

c/c++文件流字符串读取操作

yintao
 yintao
发布于 2013/05/06 00:00
字数 376
阅读 332
收藏 0

c文件打开与关闭:

打开:  FILE *fp = fopen(path, flag);

 关闭: fclose(fp);

c文件流            
  char c   char s[]   格式化输入输出char s[]  
FILE stdio FILE* fp stdio FILE *fp stdio FILE*fp
read c=getchar(); c=getc(fp); gets(s); fgets(s,fp); scanf("%s",s); fscanf(fp,"%s",s);
write putchar(c); putc(c,fp); puts(s); fputs(s,fp); printf("%s",s); fprintf(fp,"%s",s);

 

c++文件打开与关闭:

打开有两种方式: 1. fstream file(path, flag);2. fstream file; file.open(path, flag);     当文件不存在时,若flag中有ios_base::in,则不创建文件。

关闭: file.close()

c++文件流                  
  char c   char s[]   char s[] 读取整行   string s   string s 读取整行
stream iostream ifstream in;ofstream out iostream ifstream in;ofstream out iostream ifstream in iostream fstream iostream ; fstream
read cin>>c; in>>c; cin>>s; in>>s; cin.getline(s,MAXLEN); in.getline(s,MAXLEN); cin>>s; in>>s; getline(in,s, delim);
write cout<<c; out<<c; cout<<s; out<<s;     cout<<s; out<<s;  

 

注:除标准格式化输入不读入字符串末尾blank外,其余都会读入末尾一个blank(\n,space,\t其中之一),并舍弃掉。也就是说scanf之后blank还留在输入流中。 

getline 有读取一整行的功能,这个函数有两种:

  1. in.getline(s, MAXLEN) 是cin的成员函数,只能读入char[], 所以第一参数必须是char*,如果一行的字符数大于或等于MAXLEN则只读入MAXLEN-1个字符。

  2. getline(in, s, delim) 是string的友元函数,第一个参数是输入流,第二个参数是string, 第三个参数是划分字符

© 著作权归作者所有

共有 人打赏支持
yintao
粉丝 6
博文 63
码字总数 45783
作品 0
大连
程序员
C语言程序员编程学习文件操作与JSON

C语言是面向过程的,而C++是面向对象的 C和C++的区别: C是一个结构化语言,它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到...

小辰带你看世界
03/15
0
0
C语言编程新手初学者基础知识学习:文件的读写操作

C语言是面向过程的,而C++是面向对象的 C和C++的区别: C是一个结构化语言,它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到...

小辰带你看世界
05/23
0
0
C语言编程学习:写一个文件的实例详解

C语言是面向过程的,而C++是面向对象的 C和C++的区别: C是一个结构化语言,它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到...

小辰带你看世界
05/24
0
0
C++ Primer 学习笔记(第三章:字符串、向量和数组)

C++ Primer 学习笔记(第三章:字符串、向量和数组) [TOC] 3.1 命名空间的声明 声明语句可以一行放多条。 位于头文件的代码,一般来说不应该使用声明。因为其内容会拷贝到每个使用该头文件的...

ShawnLue
2015/08/20
0
0
Linux中常用C/C++一些头文件的作用

1、 Linux中一些头文件的作用: <assert.h>:ANSI C。提供断言,assert(表达式) <glib.h>:GCC。GTK,GNOME的基础库,提供很多有用的函数,如有数据结构操作函数。使用glib只需要包含<glib.h...

SibylY
2013/09/25
0
0

没有更多内容

加载失败,请刷新页面

加载更多

20180920 rzsz传输文件、用户和用户组相关配置文件与管理

利用rz、sz实现Linux与Windows互传文件 [root@centos01 ~]# yum install -y lrzsz # 安装工具sz test.txt # 弹出对话框,传递到选择的路径下rz # 回车后,会从对话框中选择对应的文件传递...

野雪球
今天
1
0
OSChina 周四乱弹 —— 毒蛇当辣条

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @ 达尔文:分享花澤香菜/前野智昭/小野大輔/井上喜久子的单曲《ミッション! 健?康?第?イチ》 《ミッション! 健?康?第?イチ》- 花澤香菜/前野智...

小小编辑
今天
7
3
java -jar运行内存设置

java -Xms64m #JVM启动时的初始堆大小 -Xmx128m #最大堆大小 -Xmn64m #年轻代的大小,其余的空间是老年代 -XX:MaxMetaspaceSize=128m # -XX:CompressedClassSpaceSize=6...

李玉长
今天
3
0
Spring | 手把手教你SSM最优雅的整合方式

HEY 本节主要内容为:基于Spring从0到1搭建一个web工程,适合初学者,Java初级开发者。欢迎与我交流。 MODULE 新建一个Maven工程。 不论你是什么工具,选这个就可以了,然后next,直至finis...

冯文议
今天
2
0
RxJS的另外四种实现方式(四)——性能最高的库(续)

接上一篇RxJS的另外四种实现方式(三)——性能最高的库 上一篇文章我展示了这个最高性能库的实现方法。下面我介绍一下这个性能提升的秘密。 首先,为了弄清楚Most库究竟为何如此快,我必须借...

一个灰
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部