• C++一些基本数据结构:字面常量、符号常量、枚举常量


    1、常量:C++包括两种常量,字面常量和符号常量.

    字面常量:指的是直接输入到程序中的值,比如:in myAge=26; myAge是一个int类型变量,而26是一个字面常量。

    符号常量:指的是用名称表示的常量,就像变量一样表示,但是一旦初始化,其值就不能改变.

    主要指的是:①const定义的常量:const unsigned short int studentPerClass=15;这里的studentPerClass就是一个符号常量

                     ②使用#include定义的常量:#define studentPerClass 15 这里的studentPerClass也是一个符号变量

    2、枚举常量:

    枚举常量可以创建一个新类型,然后定义新的类型变量,将这些变量的取值定义为一组可能值。

    定义方法:  enum COLOR {RED,BLUE,GREEN,WHITE,YELLOW};

    该语句执行后有两个变化:a、COLOR成为枚举的名称,成为一种新类型

                                      b、如果没有特殊说明,默认枚举中标示符的内容为从0开始递增的整形常数,即RED=0,BLUE=1,GREEN=2,WHITE=3,YELLOW=4

    当然也可以自己定义枚举常量的值:

                      enum COLOR {RED=100,BLUE=200,GREEN=300,WHITE=400,YELLOW=500};

    例题:

    #include <iostream>
    #include <iomanip>
    using namespace std;
    
    int main()
    {
        enum Days {monday,tuesday,wednesday,thursday,friday,saturday,sundy};
        Days d1;
        d1=monday;
    //d1=0;,这样赋值是错误的,只能把枚举值赋予枚举变量,不能把元素的数值直接赋予枚举变量。
    //如一定要把数值赋予枚举变量,则必须用强制类型转换,比如这里:d1=(enum Days)0;其意义是将顺序号为0的枚举元素赋予枚举变量a,相当于: a=monday; cout
    <<d1<<endl; system("PAUSE"); return 0; }

    运行程序,最后打印的结果是“0”,而不是“monday”

    关于枚举的几点说明:

    ①枚举值是常量,不是变量。不能在程序中用赋值语句再对它赋值。例如程序中再对枚举Days的元素再作以下赋值: monday=1; tuesday=10都是错误的。

    ②只能把枚举值赋予枚举变量,不能把元素的数值直接赋予枚举变量。

  • 相关阅读:
    P1439 【模板】最长公共子序列
    DP,入门???
    关于Eclipse在servlet中连接数据库时出现驱动加载失败的解决
    JSP学习(JavaBean)
    HTML随笔3
    CSS随笔3
    计算机网络随笔
    基本命令行操作1(java编译)
    Javascript随笔2(JQuery)
    Javascrip随笔1
  • 原文地址:https://www.cnblogs.com/xiaobailongvictory/p/4651448.html
Copyright © 2020-2023  润新知