【C++基础】6、常量

news2024/11/24 12:32:17

文章目录

  • 【 1、常量的分类 】
    • 1.1 整型常量
    • 1.2 浮点常量
    • 1.3 字符常量
    • 1.4 字符串常量
    • 1.5 布尔常量
  • 【 2、常量的定义 】
    • 2.1 #define 预处理器
    • 2.2 const 关键字

  • 常量 是固定值,在程序执行期间不会改变。这些固定的值,又叫做字面量。
  • 常量可以是任何的基本数据类型,可分为整型数字、浮点数字、字符、字符串和布尔值。
  • 常量就像是常规的变量,只不过常量的值在定义后不能进行修改。

【 1、常量的分类 】

1.1 整型常量

  • 整数常量可以是十进制、八进制或十六进制的常量。前缀指定基数:0x 或 0X 表示十六进制,0 表示八进制,不带前缀则默认表示十进制。
  • 整数常量也可以带一个后缀,后缀是 U 和 L 的组合,U 表示无符号整数(unsigned),L 表示长整数(long)。后缀可以是大写,也可以是小写,U 和 L 的顺序任意。
  • 举例
212         // 合法的
215u        // 合法的
0xFeeL      // 合法的
078         // 非法的:8 不是八进制的数字
032UU       // 非法的:不能重复后缀
85         // 十进制
0213       // 八进制 
0x4b       // 十六进制 
30         // 整数 
30u        // 无符号整数 
30l        // 长整数 
30ul       // 无符号长整数

1.2 浮点常量

  • 浮点常量由整数部分、小数点、小数部分和指数部分组成。
  • 可以使用小数形式或者指数形式来表示浮点常量。
  • 当使用小数形式表示时,必须包含整数部分、小数部分,或同时包含两者。当使用指数形式表示时, 必须包含小数点、指数,或同时包含两者。带符号的指数是用 e 或 E 引入的。
  • 举例
3.14159       // 合法的 
314159E-5L    // 合法的 
510E          // 非法的:不完整的指数
210f          // 非法的:没有小数或指数
.e55          // 非法的:缺少整数或分数

1.3 字符常量

  • 字符常量是括在单引号中。
  • 如果常量以 L(仅当大写时)开头,则表示它是一个宽字符常量(例如 L’x’)。此时它必须存储在 wchar_t 类型的变量中,否则,它就是一个窄字符常量(例如 ‘x’),此时它可以存储在 char 类型的简单变量中。
  • 字符常量可以是一个普通的字符(例如 ‘x’)、一个转义序列(例如 ‘\t’),或一个通用的字符(例如 ‘\u02C0’)。
  • 在 C++ 中,有一些特定的字符,当它们前面有反斜杠时,它们就具有特殊的含义,被用来表示如换行符(\n)或制表符(\t)等。下表列出了一些这样的转义序列码:
转义序列含义
\\ 字符
’ 字符
"" 字符
?? 字符
\a警报铃声
\b退格键
\f换页符
\n换行符
\r回车
\t水平制表符
\v垂直制表符
\ooo一到三位的八进制数
\xhh . . .一个或多个数字的十六进制数

1.4 字符串常量

  • 字符串字面值或常量是括在 双引号 “” 中的。
  • 一个字符串包含类似于字符常量的字符:普通的字符、转义序列和通用的字符。
  • 可以使用空格做分隔符,把一个很长的字符串常量进行分行。
  • 下面的实例显示了一些字符串常量。下面这三种形式所显示的字符串是相同的。
"hello, dear"
"hello, \
dear"
"hello, " "d" "ear"

1.5 布尔常量

  • 布尔常量共有两个,它们都是标准的 C++ 关键字:
    true 值代表真。
    false 值代表假。
  • 不应把 true 的值看成 1,把 false 的值看成 0。

【 2、常量的定义 】

  • 在 C++ 中,有两种简单的定义常量的方式:
    1、使用 #define 预处理器。
    2、使用 const 关键字。
  • 把常量定义为大写字母形式,是一个很好的编程实践。

2.1 #define 预处理器

#define identifier value
  • 实例
#include <iostream>
using namespace std;

#define LENGTH 10   
#define WIDTH  5
#define NEWLINE '\n'

int main()
{

   int area;  

   area = LENGTH * WIDTH;
   cout << area;
   cout << NEWLINE;
   return 0;
}

在这里插入图片描述

2.2 const 关键字

const type variable = value;
  • 实例
#include <iostream>
using namespace std;

int main()
{
   const int  LENGTH = 10;
   const int  WIDTH  = 5;
   const char NEWLINE = '\n';
   int area;  

   area = LENGTH * WIDTH;
   cout << area;
   cout << NEWLINE;
   return 0;
}

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/979327.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

22行 手写实现promise

面试题 const MyPromise()>{}const myPromise new MyPromise((resolve) > {setTimeout(() > { resolve(hellow world) }, 2000)})myPromise.then((res) > {console.log(res)return "00"}) 手写promise&#xff0c;面试了一个面试题&#xff0c;promise…

【管理运筹学】第 7 章 | 图与网络分析(1,图论背景以及基本概念、术语、矩阵表示)

文章目录 引言一、图与网络的基本知识1.1 图与网络的基本概念1.1.1 图的定义1.1.2 图中相关术语1.1.3 一些特殊图类1.1.4 图的运算 1.2 图的矩阵表示1.2.1 邻接矩阵1.2.2 可达矩阵1.2.3 关联矩阵1.2.4 权矩阵 写在最后 引言 按照正常进度应该学习动态规划了&#xff0c;但我想…

Java/Lombok Slf4j日志配置输出到文件中

1、概述 新项目需要增加日志需求&#xff0c;所以网上找了下日志配置&#xff0c;需求是将日志保存到指定文件中。网上找了下文章&#xff0c;发现没有特别完整的文章&#xff0c;下面自己整理下。 1、Java日志概述 对于一个应用程序来说日志记录是必不可少的一部分。线上问题…

每日刷题(回溯法经典问题之子集)

食用指南&#xff1a;本文为作者刷题中认为有必要记录的题目 前置知识&#xff1a;回溯法经典问题之组合 ♈️今日夜电波&#xff1a;想着你—郭顶 1:09 ━━━━━━️&#x1f49f;──────── 4:15 …

Java“牵手”微店商品列表数据,关键词搜索微店商品数据接口,微店API申请指南

微店商城是一个网上购物平台&#xff0c;售卖各类商品&#xff0c;包括服装、鞋类、家居用品、美妆产品、电子产品等。要获取微店商品列表和商品详情页面数据&#xff0c;您可以通过开放平台的接口或者直接访问微店商城的网页来获取商品详情信息。以下是两种常用方法的介绍&…

电子元器件采购中的供应链透明度

在电子元器件采购中&#xff0c;供应链透明度是一个至关重要的因素。它指的是能够清晰、实时地了解整个供应链的运作和流程&#xff0c;以及相关的信息和数据。供应链透明度在采购中具有多方面的优势和重要性&#xff0c;包括以下方面&#xff1a; 库存管理&#xff1a; 透明的…

『C语言进阶』指针进阶(一)

&#x1f525;博客主页&#xff1a; 小羊失眠啦 &#x1f516;系列专栏&#xff1a; C语言 &#x1f325;️每日语录&#xff1a;无论你怎么选&#xff0c;都难免会有遗憾。 ❤️感谢大家点赞&#x1f44d;收藏⭐评论✍️ 前言 在C语言初阶中&#xff0c;我们对指针有了一定的…

交叉编译嵌入式linux平台的gdb工具

目录 前期准备&#xff1a; 开始编译&#xff1a; 配置编译环境&#xff1a; 配置交叉编译工具链&#xff1a; 创建交叉编译产物的目录&#xff1a; termcap&#xff1a; ncurses&#xff1a; gmp&#xff1a; gdb&#xff1a; 编译产物&#xff1a; 前期准备&#x…

IT设备监控软件有哪些功能

IT设备监控软件通常可以实现以下功能&#xff1a;  设备状态监控&#xff1a;可以实时监测IT设备的运行状态&#xff0c;如设备的温度、湿度、风扇转速等&#xff0c;以及设备的开机、关机、重启等事件。  性能指标监控&#xff1a;可以监测IT设备的各项性能指标&#xff0…

rtthread下spi device架构MCP25625驱动

1.CAN驱动架构 由于采用了RTT的spi device架构&#xff0c;不能再随心所遇的编写CAN驱动 了&#xff0c;之前内核虽然采用了RTT内核&#xff0c;但是驱动并没有严格严格按RTT推荐的架构来做&#xff0c;这次不同了&#xff0c;上次是因为4个MCP25625挂在了4路独立的SPI总线上&…

前端(十六)——Web应用的安全性研究

&#x1f642;博主&#xff1a;小猫娃来啦 &#x1f642;文章核心&#xff1a;Web应用的安全性研究 文章目录 概述常见前端安全漏洞XSS&#xff08;跨站脚本攻击&#xff09;CSRF&#xff08;跨站请求伪造&#xff09; 点击劫持安全性验证与授权用户身份验证授权与权限管理 安全…

“搭载超快闪充、续航自由、天玑8200性能” iQOO Z8系列发布

近日&#xff0c;“天玑 8200 性能小超人”iQOO Z8系列正式发布&#xff0c;包括iQOO Z8和iQOO Z8x两款产品&#xff0c;首销售价1199元起。 “天玑 8200 性能小超人”iQOO Z8倾力打造“最佳千元性能机”&#xff1a;搭载具备巅峰性能的天玑 8200 &#xff0c;携手满血版LPDDR…

熵 | 无线通信知识

文章目录 一、信息论&#xff08;熵、联合熵、条件熵&#xff09;二、Bernoulli熵三、联合熵和条件熵四、互信息五、相对熵(KL距离)常需要的不等式公式 一、信息论&#xff08;熵、联合熵、条件熵&#xff09; 熵定义&#xff1a; H ( X ) E [ − l o g 2 p ( x ) ] − ∑ x…

【算法|链表】移除链表元素

算法|链表-移除链表元素 关于链表的介绍以及相关实现操作&#xff0c;见单链表&#xff0c;双链表 leetcode 203 移除链表元素 题意&#xff1a;删除链表中等于给定值 val 的所有节点。 示例 1&#xff1a; 输入&#xff1a;head [1,2,6,3,4,5,6], val 6 输出&#xff1…

Unity3D之动态生成指定数量带间隔的地面

文章目录 准备代码实现实现效果 准备 空物体生成脚本地面预制体 代码实现 using System.Collections; using System.Collections.Generic; using System.Runtime.CompilerServices; using UnityEngine;public class CreateGround : MonoBehaviour {[SerializeField]public i…

多功能透明屏,在智能家居领域中,有哪些功能特点?显示、连接

多功能透明屏是一种新型的显示技术&#xff0c;它能够在透明的表面上显示图像和视频&#xff0c;并且具有多种功能。 这种屏幕可以应用于各种领域&#xff0c;如商业广告、智能家居、教育等&#xff0c;为用户提供更加便捷和多样化的体验。 首先&#xff0c;多功能透明屏可以…

NIFI关于Parameter Contexts的使用

说明 nifi版本&#xff1a;1.23.2&#xff08;docker镜像&#xff09; 作用 Parameter Contexts&#xff08;参数上下文&#xff09;&#xff1a;参数上下文由 NiFi 实例全局定义/访问。访问策略可以应用于参数上下文&#xff0c;以确定哪些用户可以创建它们。创建后&#x…

CRM系统中的工作流管理及其重要性

工作流是CRM系统中较为常见的功能&#xff0c;它可以有效减少重复工作、提高销售效率。如果您想深入了解&#xff0c;本文就来详细说说&#xff0c;CRM工作流是什么&#xff1f;工作流的作用&#xff1f; 什么是CRM工作流&#xff1f; CRM工作流是指在CRM系统中&#xff0c;根…

Python编程的八大魔法库

Python是一门广受欢迎的编程语言&#xff0c;其生态系统丰富多彩&#xff0c;拥有许多令人惊叹的依赖库&#xff0c;可以帮助程序员们在各种领域中创造出令人瞠目结舌的应用。在这篇文章中&#xff0c;我们将探讨Python编程的十大神奇依赖库&#xff0c;它们像魔法一样&#xf…

3.运行项目

克隆项目 使用安装的git克隆vue2版本的若依项目&#xff0c;博主使用的版本是3.8.6. git clone https://gitee.com/y_project/RuoYi-Vue.git目录结构如下图所示&#xff0c;其中ruoyi-ui是前端的内容&#xff0c;其它均为后端的内容。 配置mysql数据库 在数据库里新建一个…