您的位置:首页 > 编程语言 > C语言/C++

C++ I/O标准库

2013-08-07 17:58 183 查看
C++学习:

返回指向函数的指针:

int (*ff(int))(int *,int)

想写好这样的代码很难,含义:首先将ff声明为一个函数,它带有一个int形参。该函数返回

int (*)(int* ,int) 这是指向函数的指针,所指向的函数返回int型,并带有两个形参,如果使用

typedf可以简化该函数

typedf int (*PF)(int *,int)

PF ff(int)

今天主要是看了I/o标准库,也就是标准输入输出流,

几个比较经典的例子:

1、检查文件打开是否成功,经常用到:

if( !file){

cerr<<"open failed"<<file<<endl;

return -1

}

2、清除文件流状态

程序要打开多个文件中储存的数据进行处理

while (it !=file.end()){

ifstream input(it->c_str());

if(!input)

break;

while(input >>s)\

process(s);

++it;

}

3、流状态控制

int ival;

while(cin>>ival, !cin.eof()){

if(cin.bad())

throw runtime_error("IO error");

if(cin.fail()){

cerr<<"bad data"

cin.clear(istream::failbit);//重置流

continue;

}

}

几个文件模式:

in 读操作

out 写操作

app 写之前找到文件末尾

ate 打开文件立即定位到文件末尾

trunc 打开文件清空已存在的文件流

binary 二进制文件流

使用方法:

ofstream file("file",ofstream::out | ofstream::trunc)

读写模式打开:fstream file("filename",fstream::in | fstream::out)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: