C++ primer第一章

mac2022-06-30  123

C++ primer 开始

序言1.1编写一个C++程序1.2初识输入输出1.4控制流

序言

像编译器一样思考C++语言全面了解C++语言,但是工程中可能只会使用它的一个子集

我觉得, C++的特点在于它很好地结合了内存管理(与计算机底层密切相关), 代码可读性和可扩展性。Python重在可读性, 让人觉得行云流水, 但是它与底层的关系没有C++那么直观。

1.1编写一个C++程序

//prog1.cpp int main(){ return 0;//通常返回0为程序正常运行, 返回非0数(通常为-1)为程序异常 //异常的含义由系统定义,通常用来指出错误类型 } #程序的编译: 编译器程序名字 + 编译器程序参数 + 可执行文件名称 + 源文件 g++ -o prog1 prog1.cpp

1.2初识输入输出

C++利用一个标准库 iostream 来提供IO机制,其包含两个基础类型istream和ostream,分别表示输入流和输出流。

为了处理输入,常用名为cin的istream类型的对象 为了处理输出,常用名为cout的ostream类型的对象;还有cerr用来输出警告和错误消息。 还有clog用以输出程序运行时的一般性信息。

#include <iostream> using namespace std; void io(){ cout<< "Hello, io!!" <<endl << "enter two numbers: "<<endl; int x = 0, y = 0; cin>> x>> y; cout<< "Sum of "<< x<<" and "<< y<<" is " << x+y<<endl; cerr<< "wrong, man!!"<<endl; clog<< "it's clog, man!!"<<endl; } int main(){ io(); return 0; }

1.4控制流

控制流包含while, for, if 这里想重点说一下读取数量不定的数据:

while循环会检测流的状态,遇到**文件结束符(或输入错误)**时候,istream对象的状态会变为无效,无效则为假。在Windows中是输入ctrl+z, 然后按Enter或者Return;在Unix,包括Mac中,文件结束符是用ctrl+D。

void io2(){ cout<< "Hello, io2!!" <<endl; int sum=0, value=0; while(cin>>value){ sum += value; } cout<<"sum is "<<sum<<endl; }
最新回复(0)