`
Riddick
  • 浏览: 640207 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

C++的IO操作

阅读更多

1 cin  cout cin.get() cin.get(ch)的返回值


(1)cin ,cout 就不用多说了还是返回一个iostream对象,因此它们可以这么使用。

cin >> var1 >> var2 >>var3;
cout << var1 << var2 <<var3<<endl;

 

cin.get() 没有参数时,返回值是一个整数,所以通常这么用

while((ch=cin.get()) != EOF)
{
      cout << ch;
}

 

cin.get(ch)代参数时,返回的也是一个iostream对象,因此可以这么用
cin.get(a).get(b).get(c);

 

2 cin.get(buffer, num, terminate)  cin.getline(buffer, num, terminate)的区别

注:terminate 一般为 '\n'

二者都是每次读取一行字符,或是碰到ternimate指定的字符终止或是读的字符数超过num - 1终止。
区别是cin.get会把terminate留在缓冲区中,因此下次读到的第一个字符就是terminate字符,相反,cin.getline()则会丢弃缓冲区中的terminate字符。

#include <iostream>
using namespace std;
int main()
{
   char stringOne[255];
   char stringTwo[255];
   cout << “Enter string one:”;
   cin.get(stringOne,255);
   cout << “String one: “ << stringOne << endl;
   cout << “Enter string two: “;
   cin.getline(stringTwo,255);
   cout << “String two: “ << stringTwo << endl;
   cout << “\n\nNow try again...\n”;
   cout << “Enter string one: “;
   cin.get(stringOne,255);
   cout << “String one: “ << stringOne<< endl;
   cin.ignore(255,’\n’);
   cout << “Enter string two: “;
   cin.getline(stringTwo,255);
   cout << “String Two: “ << stringTwo<< endl;
   return 0;
}

 

看输入输出结果:

Enter string one:once upon a time
String one: once upon a time
Enter string two: String two:
Now try again...
Enter string one: once upon a time
String one: once upon a time
Enter string two: there was a
String Two: there was a

 

3 两个比较有用的函数:peek(), putback() 和 ignore()

 

cin.peek(ch);   忽略字符ch


cin.putback(ch);  把当前读到的字符替换为ch


cin.ignore(num, ch); 从当前字符开始忽略num个字符,或是碰到ch字符开始,并且把ch字符丢丢掉。

#include <iostream>
using namespace std;
int main()
{
   char ch;
   cout << “enter a phrase: “;
   while ( cin.get(ch) != 0 )
   {
      if (ch == '!')
         cin.putback('$');
      else
         cout << ch;
      while (cin.peek() == '#')
         cin.ignore(1,'#');
   }
   return 0;
}

 

输入输出结果:

enter a phrase: Now!is#the!time#for!fun#!
Now$isthe$timefor$fun$

 

5 文件输入输出

 fstream中有几个函数来检查文件的状态:

eof() 返回true如果iostream 对象遇到了EOF


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/ustc_dylan/archive/2009/12/25/5077984.aspx

分享到:
评论

相关推荐

    C++ IO 操作格式

    C++的IO操作是编程中不可或缺的一部分,它允许程序与用户进行数据交互。在C++中,IO操作主要涉及标准库中的`iostream`和相关的头文件,如`iomanip`。`iomanip`头文件提供了操纵符(manipulator),这是一种特殊类型...

    C++ IO流 学习课件

    IO流是C++对C语言I/O系统的一种扩展和改进,引入了面向对象的概念,使得输入输出操作更加简洁和灵活。 在C++中,IO流主要由`&lt;iostream&gt;`库提供,包括`cin`用于输入,`cout`用于输出,它们都是属于`std`命名空间的...

    c++写的io操作操作

    在C++编程中,I/O(输入/输出)操作是程序与外部世界交互的重要部分,包括从磁盘、键盘、屏幕等设备读取数据以及向这些设备写入数据。C++提供了多种方式进行I/O操作,主要包括标准库中的`iostream`、`fstream`和`...

    IO读写操作c++IO读写操作c++

    无论是处理用户输入,还是保存或加载数据,都离不开IO操作。本篇将深入探讨C++中的IO读写,特别是关于基础类型以二进制方式的读写。 在C++中,标准库提供了一套强大的IO流库,主要包括`iostream`,`fstream`,`...

    C++IO流库

    在C++编程中,I/O流库是处理输入和输出操作的核心部分,它使得程序员能够高效、方便地与外部设备(如键盘、显示器、磁盘文件等)进行数据交互。本章将详细介绍C++的I/O流库及其相关概念。 1. **屏幕输出** - **...

    C++IO流拆分字符串

    特别是在数据输入输出(IO流)过程中,我们经常需要将一个整体的字符串拆分成多个部分,这通常涉及到字符串的拆分操作。本文将深入探讨如何在C++中使用IO流来拆分字符串,并提供不同方法的源码实现。 首先,C++标准...

    C++的IO流库.pdf

    ### C++ IO流库知识点详解 #### 一、C++为何需要自己的IO系统?...通过这样的设计,C++的IO流库不仅能够很好地支持标准的输入输出操作,还能方便地扩展以支持各种自定义类型的数据处理,满足复杂应用的需求。

    用C++实现简单的文件IO操作

    ### C++中的简单文件IO操作详解 #### 一、ASCII 输出 在C++中处理文件输入输出(简称IO)操作时,通常会涉及到文件的读取与写入。本篇文章将详细介绍如何使用C++来进行基本的ASCII文件IO操作。为了进行这些操作,...

    C++标准IO文档

    IO操作在C++中主要通过三个独立的头文件来实现: - **iostream**:定义了用于控制台读写的类型。 - **fstream**:定义了用于文件读写的类型。 - **sstream**:定义了用于内存中的字符串对象读写的类型。 这些头文件...

    《C++ Primer》学习笔记(25)IO库

    通过对《C++ Primer》中关于IO库的学习,我们不仅了解了C++中输入输出的基本原理,还掌握了如何有效地管理和控制IO操作,这对于开发高性能的应用程序具有重要意义。通过继承机制实现的不同IO操作之间的一致性,以及...

    C++风格的几种IO流

    C++编程语言中的IO流是进行输入输出操作的一种机制,包括了对标准输入输出设备如文件、内存、串行设备的读写操作。C++支持两种风格的IO流:C风格和C++风格。C++风格的IO流在使用中更加灵活和方便,它通过一系列的类...

    用C++进行简单的文件IO操作.doc

    在C++中,进行文件I/O操作主要涉及两个类,即`ifstream`和`ofstream`,它们分别用于文件的输入和输出。这两个类都属于`fstream`库的一部分,因此在编写程序时,需要包含`&lt;fstream&gt;`头文件。在早期的C++标准中,这个...

    浅谈C++ IO流

    数据的表示形式在IO操作的过程中,任何需要被传递的数据,在经过IO类库处理前后是不同的。数据的内部表示便于程序进行数据处理。典型的内部表示有:整型数的二进制表示、浮点数的IEEE表示、字符的ASCII或Unicode编码...

    探寻C++最快的读取文件的方案 C++ IO优化

    ### 探寻C++最快的读取文件的方案:C++ IO优化 在计算机编程领域,尤其是在需要处理大量数据的应用场景中,文件的读取速度往往成为制约程序性能的关键因素之一。本文将通过一系列实验对比不同读取方法的速度,旨在...

    C++程序设计与数据结构基础:第8章 C++ IO流标准库.ppt

    C++程序设计与数据结构基础:第8章 C++ IO流标准库 本章内容主要讲解了C++程序设计中的IO流标准库,涵盖了C++ I/O流概述、控制台与文件的输入与输出、外部存储介质、内存变量写文件(输出)读文件(输入)等方面的...

    socket io协议c++

    在C++中实现Socket.IO,通常需要结合WebSocket协议和RapidJSON库来处理数据序列化和传输。WebSocket是一种在HTTP协议基础上建立持久连接的协议,提供全双工通信通道,适合实时通信应用。RapidJSON则是一个轻量级的...

    深入详解C++ IO

    ### 深入详解C++ IO 在C++编程语言中,输入输出(I/O)是必不可少的一部分,它为程序提供了与外部世界交互的方式。本文将深入探讨C++中的I/O机制,帮助读者掌握其核心概念和技术细节。 #### 1. 基本概念与流对象 ...

    The C IO Streams and Locales_clocales_

    这本书深入探讨了如何在C++程序中高效地处理I/O操作和国际化问题。 IOStreams是C++标准库中的一个核心部分,它提供了强大的文本输入输出功能,允许程序员以一种类型安全、可扩展的方式来处理数据流。相比于C语言中...

Global site tag (gtag.js) - Google Analytics