C语言是面向过程的,而C++是面向对象的
C和C++的区别:
C是一个结构化语言,它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现过程(事务)控制)。
C++,首要考虑的是如何构造一个对象模型,让这个模型能够契合与之对应的问题域,这样就可以通过获取对象的状态信息得到输出或实现过程(事务)控制。 所以C与C++的最大区别在于它们的用于解决问题的思想方法不一样。之所以说C++比C更先进,是因为“ 设计这个概念已经被融入到C++之中 ”。
C与C++的最大区别:在于它们的用于解决问题的思想方法不一样。之所以说C++比C更先进,是因为“ 设计这个概念已经被融入到C++之中 ”,而就语言本身而言,在C中更多的是算法的概念。那么是不是C就不重要了,错!算法是程序设计的基础,好的设计如果没有好的算法,一样不行。而且,“C加上好的设计”也能写出非常好的东西。
枚举类型变量
在日常生活中有许多对象的值是有限的,是可以一一列举出来的。例如,一个星期内只有七天、一年只有十二个月等等。如果把这些量说明为整型,字符型或其它类型显然是不妥当的。为此,C语言提供了一种称为“枚举”的类型。枚举类型就是其值可以被一一列举出来,并且变量的取值不能超过定义的范围。
小编推荐一个学C语言/C++的学习裙【 六九九,四七零,五九六 】,无论你是大牛还是小白,是想转行还是想入行都可以来了解一起进步一起学习!裙内有开发工具,很多干货和技术资料分享!
枚举类型的声明方式比较特殊,具体格式如下:
enum 枚举名 {标识符 1 = 整型常量 1, 标识符 2 = 整型常量 2, ...};
在上述代码中,enum表示声明枚举的关键字,枚举名表示枚举对象的名称。为了让大家更好的理解枚举类型的使用,接下来我们通过定义一个枚举类型来进行详细讲解。
示例如下:
enum month { JAN=1, FEB=2, MAR=3, APR=4, MAY=5, JUN=6,
JUL=7, AUG=8, SEP=9, OCT=10, NOV=11, DEC=12 };
上面的代码中,声明了一个枚举类型对象 month,然后就可以使用此类型来定义变量。然后,通过一个具体案例来学习枚举的具体用法。
如例 2-5所示。
1 #include
2 enum month { JAN=1, FEB=2, MAR=3, APR=4, MAY=5, JUN=6,
3 JUL=7, AUG=8, SEP=9, OCT=10, NOV=11, DEC=12 };
4 int main()
5 {
6 enum month lastmonth, thismonth, nextmonth;
7 lastmonth = APR;
8 thismonth = MAY;
9 nextmonth = JUN;
10 printf("%d %d %d ", lastmonth, thismonth, nextmonth);
11 return 0;
11 }
运行结果如下图所示:
小编推荐一个学C语言/C++的学习裙【 六九九,四七零,五九六 】,无论你是大牛还是小白,是想转行还是想入行都可以来了解一起进步一起学习!裙内有开发工具,很多干货和技术资料分享!
在案例代码中,第 3 行代码定义了一个枚举类型,其中,枚举名 month 是一个标识符,大括号中的内容被称为枚举值表;枚举值表内的标识符 JAN、FEB、MAR 等被称作枚举元素,枚举元素是被命名的整型常量,枚举值表中罗列出所有可用值,枚举成员对应的值是枚举值。枚举类型的定义以分号结束。第 6行
定义了三个枚举变量,在后面的代码中分别进行了赋值,最后依次将这三个枚举变量的值输出到显示器。可以看出输出结果为枚举元素对应的值。
需要注意的是,枚举值是常量,不是变量,在程序中不能赋值。如果你在主函数中,对 MAR再次赋值,那么程序就会出现error了。
多学一招:枚举变量的快速定义
在枚举中规定,如果不给标识符指定具体的值,会默认该标识符的值等于前一标识符的值加 1 。
因此,可以将上面的定义简化成:
enum month{JAN=1, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV, DEC};
如果不指定第一个标识符对应的常量,则它的默认值是 0 。
如下例所示:
1 #include
2 //定义一组常量
3 enum constants{ C1, C2, C3 = 4, C4, C5 = 3, C6, C7, C8 = '0',C9 };
4 int main()
5 {
6 printf("C1=%d",C1);
7 return 0;
8 }
运行结果如图所示:
小编推荐一个学C语言/C++的学习裙【 六九九,四七零,五九六 】,无论你是大牛还是小白,是想转行还是想入行都可以来了解一起进步一起学习!裙内有开发工具,很多干货和技术资料分享!
在这个例中,首先用枚举定义了一组常量 C1到 C9,并向显示器输出常量 C1的数值。刚开始学的小伙伴,在编译和运行该例程之前,最好可以先试着猜测 C1到 C9这九个常量的数值。
这些是C/C++能做的
服务器开发工程师、人工智能、云计算工程师、信息安全(黑客反黑客)、大数据 、数据平台、嵌入式工程师、流媒体服务器、数据控解、图像处理、音频视频开发工程师、游戏服务器、分布式系统、游戏辅助等
求关注,求转发,求支持!
网友评论