社区
新手乐园
帖子详情
cout,cin属于什么类?
KBTyanhuo
2010-05-02 08:59:52
刚在一本大学C++书中看到一个有关文件操作的例子中有一段代码如下:
……
……
while(infile>>str[i]) //求出文件的长度
{
len++;
}
……
……
对于其中的操作符 >> 不甚理解,一般不都是出现在 cin>>i>>endl; 这样的语句中么?!故而有两点疑问?
1 cin,cout,infile……是不是都有一个公共的类?
2 cin,cout属于什么类?
(补充:新手发帖,第一次,不知道怎么给分....请知内情者明示)
...全文
1101
15
打赏
收藏
cout,cin属于什么类?
刚在一本大学C++书中看到一个有关文件操作的例子中有一段代码如下: …… …… while(infile>>str[i]) //求出文件的长度 { len++; } …… …… 对于其中的操作符 >> 不甚理解,一般不都是出现在 cin>>i>>endl; 这样的语句中么?!故而有两点疑问? 1 cin,cout,infile……是不是都有一个公共的类? 2 cin,cout属于什么类? (补充:新手发帖,第一次,不知道怎么给分....请知内情者明示)
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
码记
2012-04-29
打赏
举报
回复
[Quote=引用 11 楼 的回复:]
还有像 >> 以及 ::和 :::
这样子的运算符重载我理解的很混乱,不知道什么时候该用什么时候不该用,有没有什么心得分享下`
[/Quote]
>>提取的意思,<<插入的意思,想象一下,把箭头的方向当成数据最终流向的方向就OK了。
这个::符号应该不是很难理解吧?
学过C语言吗?
C语言struct里面的成员要引用的话不也需要stu.name或者stu->name,一个意思。只不过C++里面有一些是已经定义好的,库里面自带封装了许多类,直接调用。
觉得C++最难的地方还再于无数的重载。
刚刚开始学习C++。
华天下
2011-12-02
打赏
举报
回复
C++提供了两个用于处理输入和输出的预定义对象(cin和cout),它们是istream和ostream类的实例,这两个类是在iostream文件中定义的。为ostream类定义的插入操作符(<<)使得将数据插入到输出流成为可能;为istream类定义的抽象操作符(>>)能够从输入流中抽取信息。cin和cout都是智能对象,能够根据上下文自动将信息从一种形式转换为另一种形式。
KBTyanhuo
2010-05-02
打赏
举报
回复
答案都不是很满意...
steptodream
2010-05-02
打赏
举报
回复
iostream
KBTyanhuo
2010-05-02
打赏
举报
回复
还有像 >> 以及 ::和 :::
这样子的运算符重载我理解的很混乱,不知道什么时候该用什么时候不该用,有没有什么心得分享下`
KBTyanhuo
2010-05-02
打赏
举报
回复
非常谢谢大家帮我解惑
那么现在在哪里可以知道这种继承关系呢?
我的意思是指有没有一种对应表,表里面清晰的划出了“文件操作”这一块哪些系统对象属于哪些类?
白云飘飘飘
2010-05-02
打赏
举报
回复
标准输出输入流,字符串流,文件流都是从这两个类继承而来的。
KBTyanhuo
2010-05-02
打赏
举报
回复
回复六楼:
真心求教!
那么有infile>>str[i]这样的表达式存在是不是说明了infile也继承于这两个类?
或者我可以这样写:
class A :public istream,public ostream
{……};
在申明了A a;之后可以有表达式 a>>str[i] ?
snowzl
2010-05-02
打赏
举报
回复
[Quote=引用 1 楼 pengzhixi 的回复:]
cin,cout不是类,而是IO流对象。
[/Quote]
正解
pengzhixi
2010-05-02
打赏
举报
回复
istream和ostream
KBTyanhuo
2010-05-02
打赏
举报
回复
题目:利用seekg()函数将文件letter.dat中的内容逆序输出,即实现文件的倒读功能。
KBTyanhuo
2010-05-02
打赏
举报
回复
这里是该例子的全过程:
#include "StdAfx.h"
#include <iostream.h>
#include <fstream.h>
int main(int argc, char* argv[])
{
int i=0,len=0; //len表示文件长度
char str[100];
ifstream infile("letter.dat"); //打开或创建文件letter
if(!infile){
cout<<"文件没有打开!"<<endl;
return 0;
}
while(infile>>str[i]){
len++;
}
cout<<"文件长度为:"<<len<<endl;
cout<<"文件倒读为:";
infile.close(); //关闭文件
infile.open("letter.dat",ios::ate); //打开文件并将文件指针指到尾
if(!infile){
cout<<"文件没有打开!"<<endl;
return 0;
}
while(i<len){
infile.seekg(-i-1,ios::end); //设定相对于文件尾的偏移量(负数)
infile.get(str[i]); //读取数据
cout<<str[i]; //输出数据
i++;
}
cout<<endl;
cin>>i;
return 0;
}
KBTyanhuo
2010-05-02
打赏
举报
回复
回复一楼:
我知道cin和cout是对象,对象是属于类的,我的问题是:cin,cout(这两个对象)属于什么类...
我想知道这个流类的具体名字....
sduxiaoxiang
2010-05-02
打赏
举报
回复
stdio
pengzhixi
2010-05-02
打赏
举报
回复
cin,cout不是类,而是IO流对象。
NOIP信息学奥赛通关必备-第一个C++程序与
cout
输出语句
NOIP信息学竞赛C++编程基础语法知识--第一个C++程序与
cout
输出语句 本课程是符合小学生认知特点的C++编程入门课,讲练结合,提升孩子解决NOIP竞赛试题的能力; 课程案例均采用孩子生活中熟知常见的案例,讲解通俗...
C++语言
cin
和
cout
的详解
1.
cin
和
cout
简介
cin
是C++编程语言中的标准输入流对象,即istream
类
的对象。
cin
主要用于从标准输入读取数据,这里的标准输入,指的是终端的键盘。此外,
cout
是流的对象,即ostream
类
的对象,cerr是标准错误输出流的...
C++中
cout
的含义????
由于以前学过C,所以这段代码的其它部分在我看来都还算“正常”,然而
cout
却很独特:既不是函数,似乎也不是C++非凡规定出来的像if,for一
类
有非凡语法的“语句”。由于只是初步介绍,所以那本书只是简单的说
cout
是...
C++
cin
和
cout
值得注意的是,虽然
cout
可以处理许多
类
型的数据,但对于自定义
类
型(如
类
或结构体),你可能需要提供自定义的输出运算符重载,以便正确地显示数据。在这个例子中,std::getline 会读取用户输入的一整行,包括空格...
C++白痴笔记:
cin
是什么,
cout
是啥?
如果写成
cin
>>a,b;就是读入了一个a的数据,而b在罚站。
cin
>>a>>b 是接收键盘连续输入两次的意思,它等价于。
cin
是输入的意思(接收键盘的输入)
cout
是输出的意思(用于打印字符)
新手乐园
33,311
社区成员
41,784
社区内容
发帖
与我相关
我的任务
新手乐园
C/C++ 新手乐园
复制链接
扫一扫
分享
社区描述
C/C++ 新手乐园
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章