C++的数据类型——常量

2023-10-29

2.2  常量

2.2.2  数值常量

    数值常量就是通常所说的常数。在C++中可以从字面形式区分数值类型。

1.整形常量(整数)的类型

    通常有 int,  short int,  long int,  unsigned int...通常整数的类型不同,它们值的范围也会所不同。

  可见:

    一个整形常量可以用3种不同的方式表示。

   (1)十进制整数,在一个整常量后面加一个字面l或L(2)八进制整数,在常数的开头加一个数字0(3)十六进制整数,在常数的开头加一个数字0和一个英文字母X。

2.浮点数的表示方法

  (1)十进制小数形式

    如果在实数的数字之后加字母F或f,表示此数为单精度浮点数;如果加字母L或l,表示此数为长双精度数。

  (2)指数形式(即浮点形式)

    如3.14159可以表示为0.314159*10的一次方。

    其一般形式为   数符  数字部分  指数部分  

2.2.3  字符常量

  1.普通的字符常量

    用单撇号括起来的一个字符就是字符常量。如'a', '$', '&'。1.字符常量只包含一个字符;2.字符常量区分大小写字母;3.撇号(')是定界符,不属于字符常量的一部分。

  2.转义字符常量

    我们为了可以将电脑键盘上的“控制字符”在程序中表示,引入了一种特殊形式的字符常量,以

“ \ ” 开头的字符序列,叫做转义字符。

    一些常见的转义字符及其含义:

      同时转义字符在内存中占1个字符。 

  3.字符数据在内存中的储存形式及使用方法

      字符数据是以ASCII码储存的

   例子:

#include<iostream>
using namespace std;
int main()
{
int i,j;
i='A';
j='B';
cout<<i<<'\t'<<j<<'\n';
return 0;
}

运行结果:65  66

反之也是可以转化的,例子:

#include<iostream>
using namespace std;
int main()
{
char c1,c2;
c1='a';
c2='b';
c1=c1-32;
c2=c2-32;
cout<<c1<<'\t'<<c2<<endl;
return 0;
}

运行结果:A  B

  4.字符串常量

    用双撇号括起来的字符就是字符串常量,如“abc”在内存中占4个字节  为:  a  b  c  \0   编译系统会在字符串最后自动加一个'\0'作为字符串结束标志。

char c;  //定义一个字符变量
c='a';   //正确
c="a";   //错误,c只能容纳一个字符

2.2.4  符号常量

    当一个字符需要多次使用时,可以用一个符号名代表一个常量,称为符号常量。

例子:

#include<iostream>
using namespace std;
#define PRICE 30
int main()
{
int num,total;
num=10;
total=num*PRICE;
cout<<"total="<<total<<endl;
return 0;
}

  运行结果:total=300

最后分享一下课本上很有意思的一道题:三数比大小

int main()
{
	void sort(int x, int y, int z);
	int x, y, z;
	cin >> x >> y >> z;
	sort(x, y, z);
	return 0;
}
void sort(int x, int y, int z)
{
	int temp;
	if (x <y) { temp = x; x = y; y = temp; }
	if (z > x) cout << y << ',' << x<< ',' << z << endl;
	else if (z < y) cout << z << ',' << y << ',' << x << endl;
	else cout << y << ',' << z << ',' << x << endl;
}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C++的数据类型——常量 的相关文章

随机推荐

  • OpenCV——图像按位运算

    一 算法概述 1 逻辑运算 OpenCV4 针对两个图像之间的 与 或 异或 以及 非 运算分别提供了bitwise and bitwise or bitwise xor bitwise not 函数 图像像素间的逻辑运算与数字间的逻辑运算
  • linux禁用ssh弱加密算法,ssh弱加密算法漏洞修复

    8种机械键盘轴体对比 本人程序员 要买一个写代码的键盘 请问红轴和茶轴怎么选 ssh弱加密算法漏洞修复 SSH弱加密算法漏洞修复 1 A security scan turned up two SSH vulnerabilities 1 S
  • ES工作原理

    文章目录 一 架构设计 二 工作流程 1 ES写数据过程 2 ES搜索数据过程 3 ES读数据过程 三 写数据底层原理 四 倒排索引 五 ES为什么查询效率很高 1 倒排索引 2 单词词典 3 单词索引 4 位图BitMap 一 架构设计
  • vector的使用及模拟实现

    目录 一 vector的介绍及使用 1 vector的介绍 2 vector的使用 1 vector的定义 2 vector iterator的使用 3 vector 空间增长问题 4 vector 增删查改 3 vector 迭代器失效问
  • C++57个入门知识点_34_虚函数的模拟实现-理解(利用函数指针替代virtual的虚函数功能;虚函数的本质即为函数的覆盖,子类一旦对父类同名成员函数重载,对象在调用时使用的是子类的函数)

    上篇C 57个入门知识点 33 深入理解虚函数的原理 重点 间接调用 先查虚表地址 再查虚表中的虚函数指针 编译器先取对象的前4个字节地址 再取对应地址下函数指针 查看内存 反汇编的方法 成员函数指针 介绍了虚函数的原理 本篇将会介绍虚函数
  • 基于TMMI团队建设路线

    TMMI类似于CMMI成长路线 今天总结一下个人的思路 团队质量目标 1 质量之于产品 犹如生命之于人 公司的品牌价值直接通过产品质量体现 所以说质量对一个公司是何等重要 针对公司领导对产品质量的定位 确定质量方针与质量目标 再根据质量目标
  • JVM总结之类加载

    目录 JVM 运行时区域 方法区 klass模型 Oop模型 类加载过程 JVM调优总结 JVM 运行时区域 方法区 当JVM的类装载器加载 class文件 并进行解析 把解析的类型信息放入方法区 运行时的常量池是方法区的一部分 堆 虚拟机
  • ubuntu下eclipse无法编译 /bin/sh: 1: g++ not found 解决办法

    linux下code blocks无法编译运行提示 bin sh 1 g not found 的解决办法 今天在ubuntu 12 04 软件中心中选装了codeblocks 安装完成后却连最简单的hello world 都无法编译运行 编
  • hadoop集群搭建(基于docker-compose)

    1 创建工作目录 比如 home hadoop 需要配置2个文件 data是挂载目录 会自动创建 2 hadoop env 内容不用改 基本是默认配置 后续修改配置在这修改就行了 配置详情自己百度下 CORE CONF fs default
  • 【毕设】基于CycleGAN的风格迁移【三】代码迁移到服务器(Linux)及环境搭建

    1 假设服务器上已经安装好anaconda 2 通过u盘把代码文件 文件名pytorch CycleGAN and pix2pix master 拷到Desktop 桌面 上 3 打开Terminal 会直接进入anaconda终端 Lin
  • 程序员ChatGPT提示模板

    作为一个程序员 您总是在寻找优化您的工作流程 提高您的技能以及获得关于复杂编程概念的专家指导的方法 这就是 ChatGPT 的用武之地 一种基于人工智能的语言模型 可以利用其丰富的数据库知识帮助您完成编程任务 使用 ChatGPT 您可以提
  • 逆水寒服务器维护多长时间,逆水寒11月8日更新维护 更新时间内容介绍

    逆水寒11月8日周四例行更新 下面给大家带来具体的更新时间和更新内容汇总 有需要的一起来看看吧 各位自在同门 深秋金岁 霞光剑影 江湖秋色已深 不知各位同门在行走江湖之际 是否会停下脚步看一看金明池的红叶 逆水寒的江湖中万般风景 切莫不可辜
  • C++和C#程序语言的区别

    一直学习C 和C 两者之间的区别总结一下 目录 一 两种语言概述 C 语言 C 语言 二 两种语言对比 2 1运行依赖
  • android addview后view不能更新数据_热搜View效果

    接下来将一步一步实现如下 热搜词 效果 效果图 思路 通过观察效果图可以看出这个热搜词效果自定义View它是一个接一个的摆放的 而且每当一行的热搜词总宽度大于控件宽度的时候就会另起一行 因此我们可以考虑使用一个大的自定义的LinearLay
  • Spring 依赖注入

    依赖注入方式 1 构造器注入 2 setter注入 3 接口注入 maven pom xml配置 引入jar包和依赖jar
  • matlab读取文件夹的数据,根据文件名进行分类,加个分类后写入到不同文件夹中(.txt)

    读取文件夹下的所有文件 根据文件名中包含的内容进行分类 将不同的分类写入到不同的文件夹下 1 直接读取文件 根据文件名分类 不做任何处理 使用copyfile 将数据按照不同泳姿分类 不作其他处理 function Classificati
  • Linux IO实时监控iostat命令

    简介 iostat主要用于监控系统设备的IO负载情况 iostat首次运行时显示自系统启动开始的各项统计信息 之后运行iostat将显示自上次运行该命令以后的统计信息 用户可以通过指定统计的次数和时间来获得所需的统计信息 语法 iostat
  • nginx搭建前后端分离架构

    本人用的是vue cli 自动构建vue webpack 项目 这里不对webpack nginx进行讲解 本文主要解决前端开发环境搭建 测试环境搭建 生产环境搭建以及接口调试 一 需要工具 1 nginx 配置代理 2 webpack d
  • 了解基于Token的身份验证的来龙去脉

    简介 在Web领域基于Token的身份验证随处可见 在大多数使用Web API的互联网公司中 tokens 是多用户下处理认证的最佳方式 以下几点特性会让你在程序中使用基于Token的身份验证 1 无状态 可扩展 2 支持移动设备 3 跨程
  • C++的数据类型——常量

    2 2 常量 2 2 2 数值常量 数值常量就是通常所说的常数 在C 中可以从字面形式区分数值类型 1 整形常量 整数 的类型 通常有 int short int long int unsigned int 通常整数的类型不同 它们值的范围