C++习题整理(2)

本文详细解析了C++中string类型的输入操作符和getline函数对空白字符的处理方式,并提供了多个C++习题的解答,涉及vector、string、bitset和迭代器的使用,以及const迭代器的区别。
摘要由CSDN通过智能技术生成
习题3.6 

解释string 类型的输入操作符和getline 函数分别如何处理空白字符。 

【解答】 

string 类型的输入操作符对空白字符的处理:读取并忽略有效字符(非空白字符)之前所有的空白字符,然后读取字符直至再次遇到空白字符,读取终止(该 空白字符仍留在输入流中)。 getline 函数对空白字符的处理:不忽略行开头的空白字符,读取字符直至遇到 换行符,读取终止并丢弃换行符(换行符从输入流中去掉但并不存储在string 对象中)。


习题3.9 
下列程序实现什么功能?实现合法吗?如果不合法,说明理由。 

string s; 
cout << s[0] << endl; 

【解答】 
该程序段输出string 对象s 所对应字符串的第一个字符。 实现不合法。因为s 是一个空字符串,其长度为0,因此s[0]是无效的。 
注意,在一些编译器(如Microsoft Visual C++ .NET 2003)的实现中,该 
程序段并不出现编译错误。


习题3.11 
下面哪些vector 定义不正确? (a) vector< vector<int> > ivec; (b) vector<string

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值