C++教程第一章-Hello World
参考书籍:C++ Primer 5th
代码下载地址:https://github.com/alivebao/StudyofCPlusPlus
1. Hello World
学写代码的第一个程序-Hello World
Code:
int _tmain(int argc, _TCHAR* argv[]) { std::cout<<"Hello World"<<std::endl; return0; }
Pic:
C++程序由一个或多个函数组成,其中有一个必须命名为main,main函数是主函数,是程序的入口点。也就是说,任何程序的执行,均由main函数开始。
什么是函数?
可以将函数视为执行某种功能的语句块的集合。函数由四部分组成:返回类型,函数名,输入参数列表(由小括号括起)及函数体(由大括号括起)。在Hello World这一程序中,返回类型为int,int是C++内置类型的一种,表示一个整型数字。函数名为main,输入参数列表为空,函数体中第一句将Hello World输出至屏幕,第二句return表示函数执行完毕,并返回了数字0。
2. 输入输出
C++中可通过cin和cout执行输入和输出。在Hello World中,即通过cout在屏幕上打印出了单词。下面看一个输入输出使用实例-Add2Num。
Code:
void Add2Num(int a,int b) { std::cout<<"the sum of "<<a<<" and "<<b<<" is:"<<a+b<<std::endl; return; } int _tmain(int argc, _TCHAR* argv[]) { inti,j; std::cout<<"Please input two num:"<<std::endl; std::cin>>i>>j; Add2Num(i,j); return0; }Pic:
main函数中首先定义了两个整型变量i和j,之后用cout打印出一句话,再利用cin将i和j赋值。最后调用Add2Num函数,打印出两个数字相加的和。
什么是变量?
变量是用于存储数据的一块内存空间,变量的定义由变量类型和变量名称组成。程序通过变量名对数据进行操作。
什么是函数调用?
这个程序中定义了一个名为Add2Num的函数,根据上一节所说,函数返回类型为void,函数名为Add2Num,参数列表为a和b两个整型变量。在函数体内输出了两个整型变量的和。该函数在main中被调用:Add2Num(i,j)。该语句将i和j赋给了a和b。
什么是输入输出
这里只要先记住通过cin可以输入变量,通过cout可以将想输出的内容打印至屏幕上即可。
3. 控制流
if,for,while
Code:
int _tmain(int argc, _TCHAR* argv[]) { std::cout<<"IF Test:"<<std::endl; if(1>3) std::cout<<"1>3"<<std::endl; else std::cout<<"1<3"<<std::endl; std::cout<<"FOR Test:"<<std::endl; for(int i = 0 ; i < 3 ; ++i){ std::cout<<"i = "<<i<<std::endl; } std::cout<<"WHILE Test:"<<std::endl; intj = 3; while(j!= 0){ std::cout<<"j = "<<j<<std::endl; --j; } return0; }
Pic:
程序执行顺序为从上至下依次执行,但在控制流中,会根据逻辑判断结果选择性的执行。本程序中的if、for和while即为逻辑判断。在这些判断逻辑的括号中即为判断条件,若判断条件为真,则执行之后大括号里的语句,为假则跳过。如if中,1>3为false,因此直接执行else中的内容。
for语法:for的括号中一般有三个表达式,执行顺序为:
1. 定义:int i = 0
2. 判断:i是否小于3
3. i小于3,判断条件为真,执行大括号中的内容
4. 执行++i,++i的意思是i增加1.此时i变为1.
5. 再次判断i是否小于3
6. 。。。
7. i不小于3时,判断语句i<3为false,不再执行for大括号中的内容,for循环结束
while语法:
1. 判断j!=0,即j不等于0这一逻辑是否为true,为真则执行括号中的语句
2. 括号中输出j的值并执行—j,即j的值减少1.再次判断while小括号中的判断,发现j不等于0仍成立,因此继续执行大括号中的内容,直到j为0,while循环结束。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。