字面值常量举例:

字面值常量的分类 示例 备注
整型 42、024(八进制数)、0x23(十六进制) short类型没有对应的字面值
浮点型 3.14、3.14E2(指数) 默认类型是double
字符型 'a'、'\t'(转义字符) 类型是char
字符串型 "Hello World!" 类型实际是由常量字符构成的数组
带前缀后缀的 L'a'、42ULL、1e-3F 可改变整型/浮点型/字符型字面值的默认类型
布尔类型 ture、false  
指针类型 nullptr 此字面值的意思是0

注意:

我们可以将整型字面值写作十进制数、八进制数或十六进制数的形式。

十进制字面值的类型是int、long、long long中尺寸最小的那个,前提是这种类型能容纳下当前的值。

八进制和十六进制字面值的类型是int、unsigned int、long、unsigned long、long long、unsigned long long中尺寸最小的那个,前提如上。

对于字符串型字面值,编译器将在其结尾处添加一个空字符('\0'),因此,字符串字面的实际长度要比它的内容多1。

例如,字符串"A"代表的是一个字符数组,该数组包含两个字符:'A'、'\0'

更多关于字符串请点击:传送门

关于转义序列(即转义字符):

有两类字符程序员不能直接使用:不可打印的字符、有特殊含义的字符

【不可打印的字符】

没有可视的图符

如:退格符、其他控制字符

【有特殊含义的字符】

如:单引号、双引号、问号、反斜线

我们要使用这些字符,必须在其前面加上反斜线“\”,我们称这些字符为转义序列。

退格符 \b
报警(响铃)符 \a
进纸符 \f
换行符 \n
回车符 \r
反斜线 \\
横向制表符 \t
纵向制表符 \v
单引号 \'
双引号 \"
问号 \?

【泛化的转义序列】

形式1:\x后紧跟1个或多个十六进制数字

形式2:\后紧跟1个、2个或3个八进制数字

注:数字部分表示的是字符对应的数值。

常用示例:\7(响铃)  \12(换行符)  \40(空格)  \0(空字符)  \115(字符M)  \x4d(字符M)

字面值常量&&转义序列的更多相关文章

  1. c++学习笔记——字面值常量类

    字面值常量类:数据成员都是字面值类型的聚合类是字面值常量类.如果一个类不是聚合类,但是它符合一下要求,则它也是个字面值常量类: 1.数据成员都必须是字面值类型. 2.类必须至少含有一个constexp ...

  2. 网络编程中的常见陷阱之 0x十六进制数(C++字面值常量)

    十六进制数相等的推断 请问例如以下程序的输出是神马? #include <iostream> #include <string> using namespace std; in ...

  3. C++ 语法--变量和常量

    起步 Hello world! #include <iostream> int main() { std::cout<<"Hello, world!"; ; ...

  4. c/c++ 函数、常量、指针和数组的关系梳理

    压力才有动力,15年中旬就要准备实习,学习复习学习复习学习复习学习复习……无限循环中,好记性不如烂笔头……从数组开始,为主干. c 的array由一系列的类型相同的元素构成,数组声明包括数组元素个数和 ...

  5. C++中的字面值指定类型

    C++中只有内置类型存在字面值,没有类(class)类型字面值.例如:0是int类型的字面值,3.14159是double类型的字面值. 字面值类型很多 整型浮点字面值 20             ...

  6. Java语法基础(一)----关键字、标识符、常量、变量

    一.关键字: 关键字:被Java语言赋予特定含义的单词.组成关键字的字母全部小写.注:goto和const作为保留字存在,目前并不使用.main并不是关键字. 二.标识符: 标识符:就是给类,接口,方 ...

  7. 使用#define定义字面值和伪函数

    #define是C语言提供的宏命令,其主要目的是:在编程时,为程序员提供一定方便,并能在一定程度上提高程序的执行效率.#define将一个标示符定义为一个字符串,该标示符被称为宏,被定义的字符串称为字 ...

  8. c风格字符串,字符串字面值,c++字符串

    C风格字符串:本质上就是以空字符null为结束符的数组 可以简单的理解为:有'\0'的是c风格字符串,无'\0'的是普通字符数组 字符串字面值:是一串常量字符,字符串字面值常量用双引号括起来的零个或多 ...

  9. 工控随笔_19_西门子_WinCC的VBS脚本_08_常量和流程控制_01

    在编程的过程中,有时候我们会使用一些固定的值,例如圆周率,或者某个人的生日,或者家庭住址等等, 这些信息对于一个对象来说一旦确定就不会改变,因此我们在编程的时候也不希望这些信息会改变,在VBS里面 也 ...

随机推荐

  1. java8新特性学习1

    java8增加了不少新特性,下面就一些常见的新特性进行学习... 1.接口中的方法 2.函数式接口 3.Lambda表达式 4.java8内置的四大核心函数式接口 5.方法引用和构造器引用 6.Str ...

  2. c++cmb

    #include<windows.h> #include<bits/stdc++.h> using namespace std; ]; int main() { printf( ...

  3. 【HCNE题型自我考究】

      H3CNE题目归结 制定标准 组织: 802.1X协议起源于标准的无线局域网协议802.11.主要目的是为了解决有线局域网用户的接入认证问题. 426.一个包含有华为等多厂商设备的交换网络,其VL ...

  4. JavaScript鼠标事件

    mousedown 鼠标被按下. mouseup 鼠标按钮被释放(抬起). click 鼠标左键(或中建)被单击. 事件触发顺序:mousedown>mouseup>click>db ...

  5. php GD图片四角圆形处理

    <?php /** * blog:http://www.zhaokeli.com * 处理四角圆图片 * @param string $imgpath 源图片路径 * @param intege ...

  6. keil5 mdk调用外部编辑器notepad++、sublime3、VSCode总结

    1.打开keil主界面,点击菜单栏Tools菜单,选择如下图所示的选项. 2.点击如下图所示的菜单上红笔标注的地方,给这个工具命名,如notepad++.sublime3.vscode等,如下图, 并 ...

  7. django的查询集

    查询集表示从数据库中获取的对象集合,在管理器上调用某些过滤器方法会返回查询集,查询集可以含有零个.一个或多个过滤器.过滤器基于所给的参数限制查询的结果,从Sql的角度,查询集和select语句等价,过 ...

  8. 06 python操作MySQL和redis(进阶)

    python操作mysql.redis 阶段一.mysql事务 主要用于处理操作量大,复杂度高的数据.比如说,在人员管理系统中,你删除一个人员,你即需要删除人员的基本资料,也要删除和该人员相关的信息, ...

  9. python查询mysql数据

    >>>cur.execute("select * from 表名") >>>lines=cur.fetchall() >>>f ...

  10. ruby json解析&生成

    JSON 通常用于与服务端交换数据. 在接收服务器数据时一般是字符串. 我们可以使用 JSON.parse() 方法将数据转换为 ruby 对象. 一. json字符串解析 require 'json ...