C++ Primer学习笔记D1
今天开始学习C++ Primer这本书。首先是书的第一章 开始部分。为了编译C++代码,下载安装了MinGW和LLVM,然后使用VS CODE进行编译。
C++没有定义输入输出(IO)语句,书中使用了iostream库提供IO机制。iostream库包含istream和ostream,表示输入流和输出流,一个流就是一个字符序列,流表达的思想是随着时间的推移,字符按顺序生成或消耗。
1. 这里我们使用cin的istream类型的对象,这被称为标准输入。使用cout的ostream类型的对象,被称为标准输出。此外还有cerr和clog分别输出错误信息和普通信息。
<<为输出运算符,其左侧是ostream对象,右侧是要打印的值。运算符把给定的值写入ostream对象,打印出来。返回值为左侧运算对象。
>>输入运算符,左侧是istream对象,右侧是运算对象,其从给定的istream读入数据,存到对象中。返回值为左侧运算对象。
std::cout\std:endl,std是命名空间,::是作用域运算符。写入endl的效果是结束当前行,这是个操纵符。
std::cout<<"the sum of"<<v1<<"and"<<v2 <<" is " << v1+v2 <<std:end1; //这里由于<<返回值是左侧的运算对象,所以可以看做是多个单独的运算符合并到一起 //同理有下面这个,按流连续读入数据赋值 std::cin >>v1>>v2
2. 控制流(while/for/if)
#include <iostream> int main() { int sum=0,val=1; while (val<=10) { sum+=val; ++val; } std::cout <<"sum is " << sum <<std::endl; return 0; }
#include <iostream> int main() { int sum=0; for (int val=1:val<=10;++val) sum+=val std::cout<<"sum is" << sum <<std::endl; return 0; }
#include <iostream> int main() { int currVal = 0,val = 0; if (std::cin>>currVal) { //第一个输入 int cnt=1; while (std::cin>>val){ //按流读取下面的输入 if (val==currVal) ++cnt; else { std::cout << currVal << "occurs" <<cnt<< "times"<<std::endl; currVal=val; cnt=1; } } std::cout << currVal<<"occurs" <<cnt<<"times"<<std::endl; } return 0; }
2020/3/19,Page17。