| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 569 人关注过本帖
标题:初学c++ primer遇到的问题
只看楼主 加入收藏
panxiang88
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2007-7-21
收藏
 问题点数:0 回复次数:6 
初学c++ primer遇到的问题
1.书上有一道例题,其中有一句是这样的
while (cin >> word)
其中,word是个字符串,请问cin>>word什么时候被判为是假?
2.书中#include<string>后 即可用string word,来定义一个字符串了,我在vc++6.0上怎么试都报错,为什么?
3.书中头文件一律不加.h,而在vc++6.0中这是通不过的,是编译器的差异造成的吗?
搜索更多相关主题的帖子: primer 初学 
2007-07-23 23:09
aipb2007
Rank: 8Rank: 8
来 自:CQU
等 级:贵宾
威 望:40
帖 子:2879
专家分:7
注 册:2007-3-18
收藏
得分:0 
1,对流作为条件判断,当输入非法,或者遇到文件结束符,流被设置错误,此时为假。
2,这样没有错,不过string被放在std名字空间中,要不加上一句using namespace std,或者std::string word。
3,新标准与过时标准的区别,.h是c的头文件,在c++里,去掉了.h,在前面加c。同时,把这些头文件定义的东西放在std名字空间。

Fight  to win  or  die...
2007-07-23 23:18
panxiang88
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2007-7-21
收藏
得分:0 
那么怎样输入是非法?而且我是从终端输入,怎么能输入文件结束符呢?
原程序是这样的
#include <iostream>
#include <string>
int main()
{
string word;
while ( cin >> word )
cout << "word read is: " << word << '\n';
cout << "ok: no more words to read: bye!\n";
return 0;
}
我无论怎么输入,循环判断都不为假~~~~
2007-07-23 23:30
aipb2007
Rank: 8Rank: 8
来 自:CQU
等 级:贵宾
威 望:40
帖 子:2879
专家分:7
注 册:2007-3-18
收藏
得分:0 
因为是字符串,输入 文件结束符 就可以。
ctrl+z或者F6均可。

Fight  to win  or  die...
2007-07-23 23:36
aipb2007
Rank: 8Rank: 8
来 自:CQU
等 级:贵宾
威 望:40
帖 子:2879
专家分:7
注 册:2007-3-18
收藏
得分:0 

加上using namespace std;


Fight  to win  or  die...
2007-07-23 23:37
panxiang88
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2007-7-21
收藏
得分:0 
不好意思
输入 文件结束符 就可以,那 文件结束符 怎么输?
2007-07-23 23:48
使者
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2007-7-24
收藏
得分:0 
ctrl+z或F6
然后两个回车,不就"ok: no more words to read: bye!\n"了吗?
2007-07-24 13:59
快速回复:初学c++ primer遇到的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016326 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved