引言
编程这事是我大一上学期开始接触的,学校开设了一门课程叫做《高级语言程序设计》。当时学的时候非常吃力,因为是从C语言开始学的,很多东西都不知道,身边的同学高中甚至初中的时候就接触过,不过经过一学期的努力,最后这门课程还是考的相当不错。
那为什么我要写关于C++的文章,而不是C语言的。主要是因为,我现在基本不用C语言,其次的话C++很多东西解释起来很清楚。不过在C语言中特别重要的知识点我还是会讲的。
所有的知识我想分为:基本语法、面向对象、数据结构、算法设计 四个大的板块来讲。
那么废话不多说,直接开始,每节的重点通过加粗或者更改颜色的方式展现。
数据类型
首先数据分为常量和变量。
数据类型大致有以下几种:整型、浮点型、字符型、自定义类型。
你用的最多的一般是:基本整型(int)、单精度浮点型(float)、双精度浮点型(double)、字符型(char)。
int 你可以理解为整数,float 你可以理解为精度低一点的小数,double 理解为精度高一点的小数,char 就是你键盘上的英文字母,符号等等。
如果出现了你的数很大(2的100次方)或者给你的空间较小(给你两个字节),此时你需要加long或者short进行调整,类型所占大小、具体的数范围和调整方式这里不介绍了,想知道的自己查找一下资料,因为常用的就是上面说的四种类型。
讲解了基本的数据类型,接下来就要学会定义。
#include <iostream>
using namespace std;
int main()
{
int a;
double b=3.14;
char c='t';
return 0;
}
在上面例子中
你定义了一个整型变量a,他没有初始值。
你定义了一个双精度浮点型变量b,并且给他初始化为3.14,注意这里不是赋值,赋值在基本运算符中会讲到。这里的3.14就是一个常量。
你定义了一个字符型变量c,并且给他初始化为字符t。
变量之间不要重名。
基本运算符
C++中所有的运算通过运算符实现。
①代数运算符
首先是四则运算符:加法(+)、减法(-)、乘法(*)、除法(/)。
取余运算符(%),比如10除以3,商3,余1。那么10%3的结果就是1。
注意在除法中:
如果是一个整型除以一个整型,那么结果是商。整型10除以整型3,得到结果是整型的3。
如果是一个浮点型除以一个实型,那么结果是较精确的结果。浮点型10除以整型3,得到的结果是浮点型的3.33333。
下面给出代码示例
#include <iostream>
using namespace std;
int main()
{
int a=10;
double b=10;
int c=3;
cout<<a/c<<endl<<b/c<<endl;
return 0;
}
对于其他的运算,类型不同的数相加减,乘法都没有什么影响,唯独除法是个例外。
②关系运算符
常见的关系运算符有:
等于(==)
不等于(!=)
大于(>)
大于等于(>=)
小于(<)
小于等于(<=)
与(&&)
或(||)按住shift键之后,按enter键右上方的那个键,得到‘|’
非(!)
③赋值运算符(=)
当你想把一个常量赋值给一个变量或者把一个变量的值赋给另一个变量,你需要用到赋值运算符。
比如:
#include <iostream>
using namespace std;
int main()
{
int a;
a=5;
int b;
b=a;
int c=9;
return 0;
}
这里首先定义一个变量a,然后将5赋值给了a,所以a此时的值是5.。
其次定义了一个变量b,然后将a的值赋给了b,所以此时b的值等于a的值,所以b也是5。
最后定义了一个变量c,并且初始化为9,这里没有进行赋值,你能看懂这是为什么么?
因为运算过程是独立的一条代码,它只包含操作的数和运算符,比如说a<b,r==5,a+b,运算符前面不会跟任何的数据类型。a=5这条语句是独立的,因此他是运算符。
而一旦是在定义的时候有 ‘=’ ,你应该理解为将它进行初始化,这个在后面的面向对象中拷贝构造会是一个坑。所以在学基础的时候就要弄清楚 '=' 是具有两层含义,分别是 赋值运算符 和 定义时的初始化。
程序的输入和输出
程序的输入通过cin来实现。
程序的输出通过cout来实现。
#include <iostream>
using namespace std;
int main()
{
int a;
cin>>a;
cout<<a;
return 0;
}
如果你想连续读取可以
cin>>a;
cin>>b;
或者
cin>>a>>b;
同样的,如果你想输出也可以
cout<<a;
cout<<b;
cout<<a<<b;
如果你想输出换行就
cout<<endl;