C++ 学习与 CLion 使用:(四)常量和变量,包括字面常量和符号常量

上一篇 下一篇
标识符和关键字

常量和变量

C++ 将带小数的实数叫做 "实型" 。

符号常量建议全部大写,变量建议大小写组合或纯小写

1)常量

常量:其值在程序执行过程中不会改变的量,包括字面常量符号常量

①字面常量(字面量)

被书写到代码内的常量称之为字面常量,简称字面量。

包括:

  • 整形字面常量:整数(数值型);

    • 默认是 int 型,如果超出了 int 范围,会自动分配范围更大的类型。
      最小原则:int > unsigned int > long > unsigned long > long long > unsigned long long
    • 可以通过代码显示指定类型。
  • 实型字面常量:小数(数值型);

    • 默认是 double 型,如果超出了 double 范围,会自动分配到 unsigned double 型。
    • 可以通过代码显示指定类型。
  • 字符型 字面常量:单个字符('');

  • 字符串 字面常量:任意个字符("")。

显示指定类型:

后缀(大小写均可) 含义
U 无符号数
L 整形 long 型、浮点数 long double 型
UL unsigned long 型
ULL unsigned long long 型
F float 型
D double 型(编译器会警告,不用管)

样例:

c++ 复制代码
#include <iostream>
#include "windows.h"

using namespace std;

int main()
{
    SetConsoleOutputCP(CP_UTF8);
    21;
    1.23;
    'c';
    "hello world";

    21LL;
    1.23F;

    cout << "21和21LL的字节数分别是:" << sizeof(21) << "、" << sizeof(21LL) << endl;

    return 0;
}

结果:

c++ 复制代码
21和21LL的字节数分别是:4、8

②符号常量

使用标识符去定义的常量,称之为符号常量(简单来说,给常量取一个名字,就是符号常量)。

定义方法:

  • const 关键字:
    • 需要分号 ; 结尾。
  • #define 宏定义:#define 标识符(名称) 常量值
    • 不需要分号 ; 结尾。
    • 定义在代码头部。
    • 标识符要符合字母、数字、下划线组合的要求且数字不可开头。
    • 字母建议全部大写。

示例:

c++ 复制代码
const double PI = 3.14159;  // 类型安全的符号常量
c++ 复制代码
#include <iostream>
#include "windows.h"
using namespace std; 

#define A 1  //宏定义
#define B 2  //宏定义

int main()
{
    SetConsoleOutputCP(CP_UTF8);
    cout << "A=" << A << "并且B=" << B << endl;
    return 0; 
}

输出:

c++ 复制代码
A=1并且B=2

2)变量

变量的声明:变量类型 变量名;包括:

  • int 整形;
  • float 实型;
  • char 字符型;
  • string 字符串型。

变量的赋值:变量名=变量值(等号右边结果赋给等号左边的变量)。

示例:

c++ 复制代码
#include <iostream>
#include "windows.h"
using namespace std;

int main()
{
    SetConsoleOutputCP(CP_UTF8);
    int age = 17, weight = 60;  //多变量同时定义并赋值, 使用逗号隔开
    float height;
    string gender;

    height = 1.6;
    gender = "小明";

    cout << gender << "今年" << age << ", 体重" << weight << "kg, 身高" << height << "m" << endl;
    return 0;
}

结果:

c++ 复制代码
小明今年17, 体重60kg, 身高1.6m

相关推荐
Katzelala3 分钟前
[K8S学习笔记] Service和Ingress的关系
笔记·学习·kubernetes
有谁看见我的剑了?10 分钟前
k8s-init容器学习
学习·容器·kubernetes
YaoYuan93231 小时前
C++ 类型推导(第一部分)
c++
HAH-HAH1 小时前
【Python 入门】(2)Python 语言基础(变量)
开发语言·python·学习·青少年编程·个人开发·变量·python 语法
递归不收敛2 小时前
一、Java 基础入门:从 0 到 1 认识 Java(详细笔记)
java·开发语言·笔记
夜猫逐梦2 小时前
【VC】 error MSB8041: 此项目需要 MFC 库
c++·mfc
zhangfeng11333 小时前
win7 R 4.4.0和RStudio1.25的版本兼容性以及系统区域设置有关 导致Plots绘图面板被禁用,但是单独页面显示
开发语言·人工智能·r语言·生物信息
xian_wwq3 小时前
【学习笔记】Https证书如何升级到国密
笔记·学习·证书
姓刘的哦3 小时前
Qt中的QWebEngineView
数据库·c++·qt
C_player_0013 小时前
——贪心算法——
c++·算法·贪心算法