c++ primer第一章

1

1.2

cin istream类型该对象被称为标准输入;cout ostream对象被称为标准输出对象。cerr来输出警告和错误信息,clog来输出程序运行时的一般性消息。

 

写入endl的效果是结束当前行,并将与设备关联的缓冲区中的内容刷到设备中。缓冲刷新操作可以保证到目前为止程序所产生的所有输出都真正写入输出流中,而不是仅停留在内存中等待写入流。

 

1.3

注释不能嵌套使用,会把里面注释内容当成源码。

    std::cout << "/*";   //输出/*
std::cout << ("*/");   //输出*/
std::cout << "/* " */ "*/";
std::cout<</* "*/" /* "/*" */; //输出 /*

第三句报错:语法错误 。

解释:两个引号里正常输出 中间* /缺少左对应的 / * 。改为

std::cout<<"/*" /* */"*/";

即可正常输出。

 

1.4

1.4.3

std::cin>>value

当我们使用一个Istream对象作为条件时,其效果是检测流的状态。如果流是有效的,即流未遇到错误那么检测成功。当遇到文件结束符时,或遇到一个无效输入时,istream对象的状态会变为无效。处于无效状态的istream会是条件变为假。

windows输入文件结束符是ctrl+Z,unix ctrl+D。

错误状态测试

    int i;
while (std::cin >> i)
{
std::cout << i << std::endl;
}

当输入为5 4 3 2 s时,程序退出。


bool i;
while (std::cin >> i)
{
std::cout << i << std::endl;
}

当输入 1 0 s 时程序退出。

上述两个例子,说明输入时根据赋值给的参数来确定是否为错误。当类型不一致,会出现错误。

 

1.3

对于不属于标准库的头文件,用""包围。

posted @ 2023-04-06 22:44  mysteryily  阅读(26)  评论(0)    收藏  举报