【C++】c++入门,认识c++版本的Hello world!

Hello,everybody!在c语言,数据结构初阶学完之后,咱们就要开始c++的学习了。关于c++的语法,有很多是为了弥补c语言的不足。在咱们学习c++的过程中,随着你对c++语法掌握的越来越熟练。我相信你会逐渐爱上c++。那我们直接进入正题。

1.c++兼容c

c++兼容c的意思就是百分之99的c语法在c++中同样适用。

【C++】c++入门,认识c++版本的Hello world!_第1张图片

在text.cpp文件中写标准的c语言同样可以运行。

2.cin,cout

那既然在c++文件中咱们就要写c++的语法,下面我给大家展示一下c++版本的Hello world!

【C++】c++入门,认识c++版本的Hello world!_第2张图片

【C++】c++入门,认识c++版本的Hello world!_第3张图片

大家对比一下这两个Helld world!有什么不同?

下面我将针对这个简单的c++程序逐步讲解:

1.首先,咱们c++的头文件是iostream,注意这个文件没有后缀。

2.cout你可以把它看作屏幕。

3.符号<<就相当于河流一样,字符串通过<<流向cout(屏幕)。

4.endl可以理解为换行符。

【C++】c++入门,认识c++版本的Hello world!_第4张图片

当然,也可以不要endl,输出的结果也就不会换行。

如果要进行格式化的输出,就需要用到cin(键盘)。

【C++】c++入门,认识c++版本的Hello world!_第5张图片

cin>>i,我们可以理解为:cin就是键盘,从键盘上输入数据并通过符号>>流向i中,再通过cout打印在屏幕上。

也是挺生动形象的。这里我们要注意在c++中不需要%d,%c,%s进行数据类型匹配,编译器可以对数据类型自动匹配。

了解这些知识后,再看这个程序就顺眼多了。

3.命名空间

在c语言中,在同一个作用域中不可以有同名变量。例如:

【C++】c++入门,认识c++版本的Hello world!_第6张图片

在main函数中,如果定义两个整型变量i,在编译的过程中,编译器会给一个重定义的报错信息。

如果在以后的工作中,有多人共同完成一个大型项目,可能会出现两人或多人命名冲突的现象。为了解决这个问题,c++语法给出了解决方案:命名空间。

【C++】c++入门,认识c++版本的Hello world!_第7张图片

下面我来解释一下命名空间:

1.我在main函数的上面写了两个命名空间,如果你的名字叫leo,你同事的名字叫lisa。就可以以名字来做为命名空间的名字,这方面没有什么要求,类似于函数命名,方便就好。

2.要以namespace开头,后面跟上你给出的名字。

3.接下来就可以在这个命名空间里定义你的变量了。注意不同的命名空间可以有同名变量,它们互不影响。但在同一个命名空间里不可以。

4.如果想要访问命名空间里的变量,有两种方法:

一种就是上面图中给出的。如果我要访问leo中的i,就需要用leo::i,来向编译器指明具体要访问的变量。

还有一种方法就是展开命名空间:如果我要展开leo,就可以用:using namespace leo;将该命名空间展开后,其中的变量就和全局变量差不多,不用特殊指明,可以直接访问。

【C++】c++入门,认识c++版本的Hello world!_第8张图片

【C++】c++入门,认识c++版本的Hello world!_第9张图片

4.关于using namaspace std

如果你学过c语言的预处理并且把命名空间看明白了,我想你可以猜到using namespace std;是什么意思了。

在代码文件形成可执行程序的过程中,第一步就是预处理,这一阶段会将头文件展开。也就是说在文件iostream中定义了各种变量,函数等。其中就有一个命名空间,它的名字叫std,在这个命名空间中定义了变量cout,cin,endl等等。所以,咱们在平时的学习中,如果要频繁用到该命名空间中定义的变量,为了方便,可以将该命名空间展开,也就是这条语句:using namespace std;

当然,如果你不想展开,就需要想编译器指定我要访问命名空间std中的变量。

好,如果以上我介绍的这些你都听懂了的话那开头的Hello world!是否就可以全部理解了呢?

【C++】c++入门,认识c++版本的Hello world!_第10张图片

【C++】c++入门,认识c++版本的Hello world!_第11张图片

你可能感兴趣的:(c++)