标题为入门,所以我们从最基本的概念开始,指在能做到一个没有接触过编程的人能从零开始学习编程并开始热爱编程。
根据标题我们先分别解释一下这几个关键字:
- C++:我们可以理解为人和计算机交流的语言。举例:两个中国人交流使用汉语,两个英国人交流使用英语,但是如果一个英国人和一个中国人交流会怎么样呢?答案是没法交流,因为他们的语言不同;想要使两人能沟通的办法就是其中一个人去学习另一个人的的语言,比如中国人学习英语,这样就可以和英国人交流沟通了,话题说回来,人要和计算机交流该怎么办,就只能学习计算机能听的懂得语言,C++就是计算机会懂得的一种语言之一。
- 程序:通俗的表达就是一大堆指挥计算机帮你干活的命令。
- 设计:每一种语言都有语法,词汇,逻辑等等的条条框框,不是随便胡乱组合出来的;那设计是什么呢?就像生活中我们为了做好一件事的规划,比如今天你要做一顿饭给家人吃,你是先煮饭再洗菜还是先洗菜在煮饭呢,怎么做才合理呢?就需要你做一个良好合理的计划,这样才能有条不紊的把饭做好。
总结:C++程序设计就是用C++语言编写一个良好且符合事理的一堆命令让计算机帮助我们解决问题。
hint:在这里我简单叙述一下在众多语言中为什么选择使用C++。首先C++语言几乎在所有计算机环境中都非常普及,其次C++从C语言中继承了过程化编程的高效性。
接下来说明C++程序中相关的一些基本概念:C++关键字、数据、算法
1.C++关键字:什么是关键字呢?我们还是用我们平时使用的汉语来说明,关键字就等同于汉语中的汉字、词、词组、成语、歇后语等,而这些就是我们的祖先创造的,是一个约定,每个字都赋予了特定的含义。而C++中也规定了一些类似于汉字字词的基本C++词语;其中关键字由两个部分组成:已定义关键字、保留关键字(不管是哪种,总之这里先记住是关键字就好)。
已定义关键字 | ||
asm | false | sizeof |
auto | float | static |
bool | for | static_cast |
break | friend | struct |
case | goto | switch |
catch | if | template |
char | inline | this |
class | int | throw |
const | long | true |
const_cast | mutable | try |
continue | namespace | typedef |
default | new | typeid |
delete | operator | typename |
do | private | union |
double | protected | unsigned |
dynamic_cast | public | using |
else | register | virtual |
enum | reinterpret_cast | void |
explicit | return | volatile |
export | short | wchar_t |
extern | signed | while |
C++11新增关键字 | 11就是2011年更新的标准 | |
alignas | char32_t | noexcept |
alighof | constexpr | nullptr |
char16_t | decltype | static_assert |
thread_local | ||
保留关键字 | ||
and | compl | or_eq |
and_eq | not | xor |
bitand | not_eq | xor_eq |
bitor | or |
注意表格的中的关键字其实只是告诉我们有这些关键字,不必须要特地去背诵,在编写程序的过程中用了加之多使用几次自然就记住了,就像我们的汉语,字典告诉你有多少字,你不可能去把字典里的字背下来,只有长久的使用自然就能记住了。
2.数据:我们在说程序的时候引入了生活中的做饭,那么数据就是做饭的各种食材:一个鸡蛋、一头牛、一条鱼等等……。C++是如何表示这些数据的呢?这里就引入了两个概念:类型、变量。
2.1类型:鸡蛋的计量单位我们用个,牛的计数单位用头,鱼的计数单位用条……。在C++语言中我们也有类型,比如int关键字表示的是整数类型,float关键字表示的是单精度浮点数类型,char关键字表示字符类型等等……。
2.2变量:变量就是鸡蛋、牛、鱼等等……。给你一个类型头,具体是什么一头就由你来定了;这就是变量。
3.算法:我们做饭的过程就是算法,大多数人都喜欢一道菜:红烧鱼;做这道菜是不是要先用刀杀鱼,然后洗鱼,剁鱼,最后煮这条鱼。其中这杀、洗、剁、煮不就是做这道菜的过程吗?所以应该能理解算法这个词语大致的含义了吧。
总结:例如我们叫计算机帮助我们做一件事:计算两个整数的和。首先要准备两个数据,这两个数据的类型都是整数,算法就是加运算。程序(计算机做的这件事)就是数据结合算法所得到的结果。我们再用C++语言写出这整个过程,计算机不就能听懂我们的说的话给我们干活了吗?
结尾我们说一下在安装好编写C++工具(例如codeblocks、Dev C++、VS Code等等)的情况下编写一个简单的程序;
#include <iostream>
//输入方法和输出方法我们都没有,所以需要把别人写好的拿进来用
using namespace std;
//我们把别人的写的方法拿进来用,这个方法不是我们写的,所以需要说明一下写的人是谁
int main()//暂时不用管,后面章节进一步学习会学到
{
int a, b, c;//给了一个整数类型,三个变量a和b和c
cin >> a >> b;
//使用cin的方法输入,每输入一个用>>隔开表示但钱变量输入的完成,下一个变量输入的开始
c = a + b;
//把a和b加起来的和赋值给c
cout << c;
//使用cout的方法输出c
return 0;//暂时不用管
}
两斜杆属于C++语言的注释,用来说明程序使用,不会被程序执行。
hint:由于是说给从零开始的人参考的,所以我尽量通俗易懂(以我个人理解)的描述,内容多数都是不严谨的,只是为了描述清楚一件事,由于本人水平有限,错误之处多多指教。