函数:包含4部分:返回类型,函数名,形参列表,函数体。其中函数体是一个语句块。main函数:每个cpp程序都有且仅有一个main,os通过调用main来运行程序。main函数的返回类型必须为int,被用于指示状态,0表示成功返回,非0值由系统定义,常用于指出错误类型。类型:一种类型不仅定义了数据元素的内容,还定义了这类数据上可进行的操作。即:类型=内容+操作后缀:C++源文件的常见后缀名包括:.cc .cxx .cpp .cp .C执行:unix中可执行文件的名称任意,执行时输入完整文件名。windows中可执行文件后缀为.exe,执行时不需输入.exe查看返回值:可在程序执行完后用echo查看main函数返回值,unix中用echo $?,windows中用echo %ERRORLEVEL%GNU编译:g++ -o prog1 prog1.cc,其中-o prog1指定输出文件名,未指定时为a.out。另外可用-std=c++11来开启C++ 11VS编译:cl /EHsc prog1.cpp,其中/EHsc是编译器选项,用于打开标准异常处理。VS生成的可执行文件名与第一个源文件名相同,后缀为.exe开启warning:GCC中用-Wall,VS中用/W4iostream中提供IO机制2个基础IO类型:istream和ostream,分别是输入流和输出流,一个流是一个字符序列4个IO对象:标准输入cin,标准输出cout,标准错误cerr,一般信息clog,系统经常将程序运行的窗口与这些对象关联,即这些对象与程序运行的窗口交互头文件:使用标准库的设施都应用#include来包含相关头文件,通常#include必须出现在所有函数之外表达式:一个表达式产生一个计算结果,它由一个或多个运算对象和一个或多个运算符组成输出运算符<<:接受两个对象,左侧一个ostream对象,右侧是要打印的值。此运算符将右侧对象的值写入左侧ostream对象中,返回左侧ostream对象,级联时从左到右结合。因此级联时,同一个ostream对象被从左到右的一系列?操作,即从左到右输出值。操纵符endl:写入此操纵符的效果是结束当前行,并刷新缓冲区,即,将与设备关联的缓冲区中的内容刷到设备中。若不手动刷新,则需等到缓冲区满才会自动刷新,所以建议调试时每一步都使用endl手动刷新(比较耗时)命名空间:帮助避免名字冲突,标准库定义的所有名字都在std中作用域运算符:::用std::cout来指定命名空间std中的cout名字初始化:初始化一个变量,就是在变量创建的同时为其赋值。输入运算符>>:接受两个对象,左侧一个istream对象,右侧是要被写入的变量。此运算符从左侧istream对象中读入数据,存入右侧对象中,返回左侧istream对象,级联时从左到右结合。因此级联时从同一个istream对象中连续读入数据,依次放入从左往右的对象中。运算符重载:例如int v; std::cout<<"value is "<<v<<std::endl;的代码,三个<<处理的对象类型不一样,是不同的运算符。标准库定义了不同类型的运算符来处理不同类型的对象,遇到匹配的时自动选择。//和界定符对注释/* */
|
|
//开始,以换行符结束,可进行单行或半行注释,注释内容可包含任何文本包括重复的双斜线while先判断后执行,do...while先执行后判断条件是一个返回真或假的表达式语句块是语句的一种,任何可使用语句的地方都可用语句块i++和++i的区别:i++在语句执行后对i自增,++i在语句执行前对i自增。另外,从运行速度来讲,由于i++返回i的值,而++i返回i的引用,所以对于类类型,++i更快。for循环头:一个初始化语句;一个循环条件;一个表达式EOF,或从流中读到的数据无法转为右侧对象时,流变为无效手动输入EOF:unix中用ctrl+d,windows中用ctrl+z然后enter编译器能检查出的错误:语法错误(syntax error),类型错误(type error),声明错误(declaration error)debug好习惯:按照报错的顺序修改,每修改一个就立即重新编译=和==的返回值都能作为真假被if接受.h .H .hpp .hxx,标准库的头文件通常不带后缀。编译器一般不关心头文件名的形式。<>,不属于标准库的头文件用双引号""文件重定向:大多数系统都可用a.out <infile >outfile来将infile内容作为标准输入,并将标准输出写入到outfile成员函数是定义为类的一部分的函数,有时也被称为方法调用运算符()用于调用一个函数原文:https://www.cnblogs.com/updown/p/14280326.html