我是靠谱客的博主 幸福烤鸡,最近开发中收集的这篇文章主要介绍C++入门-输入和输出,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

输入输出体系结构:


(1)、在C++的流类库中定义了四个全局流对象:cin,cout,cerr和clog
cin :标准输入流对象, 键盘为其对应的标准设备。
cout :标准输出流对象,显示器为标准设备。
cerr和clog :标准错误输出流,输出设备是显示器。为非缓冲区流,一旦错误发生立即显示。
提取运算符“>>”(stream_extraction operator)和插入运算符“<<”(stream_insertion operator),执行输入/输出操作。
  • “提取”的含义是指输入操作,可看作从流中提取一个字符序列。
  • “插入”的含义是指输出操作,可看作向流中插入一个字符序列。

(2)、标准输入/输出成员函数
输入成员函数:
(1)字符输入:
    int istream::get();
(2)字符串输入:
    istream&istream::get(char *,int,char=’n’);
输出成员函数
  (3)、 输出参数字符
     ostream&ostream::put(char);
     ostream&ostream::flush();

eg:
(1)、cin>>  接受一个字符或者字符串,遇到“空格”、“TAB”、“回车”都结束
(2)、cin.get() 或者 cin.get(变量名) 接收字符
       cin.get(字符数组名,接收字符数目)用来接收一行字符串,可以接收空格
(3)、cin.getline()  接受一个字符串,可以接收空格并输出
char m[20];
cin.getline(m,5);
cout<<m<<endl;
输入:jkljkljkl
输出:jklj
接受5个字符到m中,其中最后一个为'',所以只看到4个字符输出;
(4)、getline()  受一个字符串,可以接收空格并输出,需包含“#include<string>”
string str;
getline(cin,str);
cout<<str<<endl; 

标准C++中的string类的用法总结
http://www.cnblogs.com/xFreedom/archive/2011/05/16/2048037.html

(3)、文件流
ifstream ifile;//只输入用
ofstream ofile;//只输出用
fstream iofile;//既输入又输出用
类ofstream, ifstream 和fstream 是分别从ostream, istream 和iostream 中引申而来的
(a)、打开文件
void open(const char* filename,int mode,int access); 
参数: filename: 要打开的文件名 mode: 要打开文件的方式 access: 打开文件的属性
打开文件的方式在类ios(是所有流式I/O类的基类)中定义,常用的值如下:
ios::app: 以追加的方式打开文件
ios::ate: 文件打开后定位到文件尾,ios:app就包含有此属性
ios::binary: 以二进制方式打开文件,缺省的方式是文本方式。两种方式的区别见前文
ios::in: 文件以输入方式打开
ios::out: 文件以输出方式打开
ios::nocreate: 不建立文件,所以文件不存在时打开失败
ios::noreplace:不覆盖文件,所以打开文件时如果文件存在失败 
可以用“或”把以上属性连接起来,如ios::out|ios::binary
打开文件的属性取值是: 0:普通文件,打开访问 1:只读文件 2:隐含文件 4:系统文件
如果open函数只有文件名一个参数,则是以读/写普通文件打开.
(b)、文本文件的读写
//写文件            
   #include <fstream>
              
               fstream fout;
                fout.open( "D:\VC\out.txt");
                cout<<fout.is_open()<<endl;
                 if (fout.is_open())  
                { 
                                fout << "Hello .n"; 
                                fout << "Visual Studio.n" ; 
                                fout.close(); 
                }  

//读文件
   #include <fstream>

               char buffer[256]; 
                ifstream fin;
                fin.open( "D:\VC\out.txt"); 
                 if (!fin.is_open()) 
                {
                                cout << "Error opening file"; exit (1);
                } 
                 while (!fin.eof() ) //状态标志符的验证,如果读文件到达文件末尾,返回true。
                { 
                                fin.getline (buffer,100); 
                                cout << buffer << endl; 
                }  

(c)、 二进制文件
必须使用read() 和write() 方法读取和写入二进制文件
   #include <fstream>

                char * buffer; 
                long size = 1024; 
                ifstream fin;
                fin.open( "D:\VC\cpp.jpg",ios::binary);  
                buffer = new char [size]; 
                fin.read (buffer, size); 
                fin.close();  

最后

以上就是幸福烤鸡为你收集整理的C++入门-输入和输出的全部内容,希望文章能够帮你解决C++入门-输入和输出所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(44)

评论列表共有 0 条评论

立即
投稿
返回
顶部