您现在的位置:学赛首页 > 计算机等级考试 > 复习资料 > 正文
二级C++重点难点分析:输入、输出流[3]
http://www.educity.cn 作者:希赛IT教育研发中心 来源:希赛网 2007年7月11日 发表评论 进入社区
    当从键盘上输入数据时,只有当输入完数据并按下回车键后,系统才把该行数据存入到键盘缓冲区,供cin流顺序读取给变量。从键盘上输入的每个数据之间必须用空格或回车符分开,因为cin为一个变量读入数据时是以空格或回车符作为其结束标志的。

    当cin>>x操作中的x为字符指针类型时,则要求从键盘的输入中读取一个字符串,并把它存储到x所指向的存储空间中,若x没有事先指向一个允许写入数据的存储空间,则无法完成输入操作。另外,从键盘上输入的字符串,其两边不需要带有双引号定界符,对于输入的字符也是如此,不需要带有单引号定界符。

    当系统执行cout<<x操作时,首先根据x值的类型调用相应的插入操作符重载函数,把x的值按值传送给对应的形参,接着执行函数体,把x的值(亦即形参的值)输出到显示器屏幕上,从当前屏幕光标位置起显示出来,然后返回cout流,以便继续使用插入操作符输出下一个表达式的值。当使用插入操作符向一个流输出一个值后,再输出下一个值时将被紧接着放在上一个值的后面,所以为了让流中前后两个值分开,可以在输出一个值之后接着输出一个空格、一个换行符或其他需要的字符或字符串。

       例15.1.2  对于语句“cout<<endl<<x;”中的各个组成部分,下列叙述中错误的是(   )。[2005年9月选择第16题]
    A.“cout”是一个输出流对象                B.“endl”的作用是输出回车换行
    C.“x”是一个变量                         D.“<<”称作提取运算符
    解析:本题考查C++流的预定义流对象,操作符和运算符重载。A、B和C中的叙述都是正确的。由于左移运算符<<重载用于向流中输出表达式的值,所以称为插入运算符。选项D的叙述是错误的。
    答案:D
  本章节内容来自希赛全国计算机等级考试用书《计算机等级考试考点分析、题解与模拟——二级C++语言》。(购书请见 :http://shop.csai.cn/itbook/itbookinfo.asp?lbbh=10032460

[1]  [2]  [3]