操作系统通过调用main函数(function)来运行C++程序:
int main(){ return 0; }
main函数返回类型必为int。大多数系统中main的返回值被用来指示状态。0即成功;非0由系统定义,用来指出错误类型。
源文件(sourse file)后缀常见包括:.cc .cxx .cpp .cp .C.
C++未定义IO语句,而用标准库(standard library)提供IO机制。
iostream库包含两个基础类型:istream ostream;“流(stream)”即,随时间推移,字符顺序生成或消耗。
istream对象,标准输入(standard input):cin ,数据从正在运行的窗口读入。
ostream对象,标准输出(standard output):cout ;clog ;标准错误(standard error):cerr ,数据写到同一个窗口。
#include <iostream> int main(){ std::cout<<"Enter two numbers:"<<std::endl; int v1=0,v2=0; std::cin>>v1>>v2; std::cout<<"The sum of"<<v1<<"and"<<v2<<"is"<<v1+v2<<std::endl; return 0; }
头文件(header):#include <iostream>
<<运算符,返回其左侧的运算对象,由此可将输出请求连接起来;endl操纵符(manipulator),结束当前行,将缓冲区(buffer)内容刷到设备中,保证所有输出真正写入输出流;std 标准库 命名空间(namespace),避免名字定义冲突,使用方法 ::。
for/while 略;
int main(){ int sum=0,value=0; while (std::cin>>value) sum+=value; std::cout<<"Sum is:"<<sum<<std::endl; return 0; }
遇到eof,或无效输入,istream对象会使条件为假,循环结束。
if ;
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; }
头文件后缀:.h .H .hpp .hxx ; 标准库头文件通常无后缀。来自标准库的头文件用<>,不属于标准库的用""。
使用文件重定向:可将标准输入和标准输出与命名文件关联;addItems.exe可执行文件(UNIX中是addItems),从infile文件读取,输出到outfile,三个同一目录。
$ addItems <inflie >outfile
成员函数又叫成员方法。