《C++ Primer第四版》学习笔记(四)变量和基本类型 - 字面值常量
来源:互联网 发布:关于网络信息收集 编辑:程序博客网 时间:2024/05/19 19:56
字面值常量
1. 不能修改
2. 每个字面值常量都有相应的类型。例如,0 是 int,3.14 double
3. 只有内置类型存在字面值常量
4. 没有类类型的字面值,因此,也没有任何标准库类型的字面值
5. 称之为字面值因为只能以它的值称呼它
(一)整型字面值
1. 三种:十进制(decimal) 八进制(octal) 十六进制(hexadecimal)
20(十)020(八)0x20(十六)
2. 加L或者u分别代表long和unsigned类型,不能有空格。
书中提醒两遍:不提倡用小写字母l,容易与数值1混淆。
(二)浮点字面值规则
1. 通常可以用十进制或者科学计数法来表示浮点字面值
2. 默认的浮点字面值常量为double类型
3. 在数值后面加上F(或f)和L(或者l)分表表示单精度和双精度
(三)布尔字面值和字符字面值
1. true和false是布尔型的字面值
2. 可打印的字符型字面值通常那个用一对单引号来定义:‘a’、‘2’、‘,’、‘ ’(均是char类型的)
3. 加上L能够得到wchar_t类型的宽字符字面值:L‘a’
(四)非打印字符的转义序列
1. 转义字符表示
2. 无论是普通字符,还是非打印字符和特殊字符,都可以表示为“通用转义字符”。如八进制形式的“\7(响铃符)、\12(换行符)、\0(空字符)、\62(数字2)”(可以对照ASCII码表看一下)。“通用转义字符”也可以用十六进制表示(\xddd)。
注:字符‘\0’通常表示空字符,还有更特殊的意义。
(五)字符串字面值
上述四种四面值都是基本内置类型,字符串字面值不属于上述类别。
1. 用双引号括起来的零个或者多个字符表示。不可打印字符表示成相应的转义序列:
“hello world”
“”
“\ncc\tnihao\n”
2. 为了兼容c语言,C++中所有的字符串字面值都有编译器自动在末尾添加一个空字符。
注意区别:
‘a’ :字符字面值,上述第三类,单个字符,未添加空字符
“a”:包含‘a’和‘\0’两个字符的字符串
3. 宽字符字符串字面值,所有字符都转化为宽字符即可
L“C++ program”
(六)字符串字面值的连接
1. 两个相邻的仅由空格、制表符、换行符分开的字符串字面值,可连接成一个新字符串字面值。
多行书写长字符串字面值变得简单。
#include<iostream>int main(){ std::cout << "a multi-line" "string literal" "using concatenation" << std::endl; return 0;}
2. 如果连接字符串面值和宽字符串字面值结果是未定义的
(七)多行字面值
不常用:在一行的末尾加一反斜杠可将此行和下一行当作同一行处理
但要注意:反斜杠必须是该行的尾字符(不允许其后面由注释或者空格)。同样,后继行首的任何空格和制表符都是字符串字面值的一部分。
#include<iostream>int main(){ std::cout <<"a multi-line \string literal \using concatenation" << std::endl; return 0;}
#include<iostream>int main(){ std::cout << "a multi-line \ string literal \ using concatenation" << std::endl; return 0;}
#include<iostream>int main(){ std::cou\t << "Hi" << st\d::endl; return 0;}
第37页,<不要依赖未定义行为>很重要。
0 0
- 《C++ Primer第四版》学习笔记(四)变量和基本类型 - 字面值常量
- 《C++ Primer第四版》学习笔记(三)变量和基本类型 之 基本内置类型
- 《C++ Primer第四版》学习笔记(五)变量和基本类型 之 变量
- 《C++ Primer第四版》学习笔记(六)变量和基本类型 - const、引用
- 《C++ Primer第四版》学习笔记(七)变量和基本类型 - typedef、枚举、类
- c++primer 学习笔记(2.0)变量和基本类型
- c++primer学习笔记1 - 变量和基本类型
- C++Primer学习笔记之变量和基本类型
- C++Primer笔记--变量和基本类型
- 第二章 头文件、变量和基本类型(3)——字面值常量
- C++Primer第二章(变量和基本类型)笔记
- C++primer 学习(二)变量和基本类型
- C++primer学习笔记(一):第二章.变量和基本类型
- 《C++Primer 5e》学习笔记(1):变量和基本类型
- C++ Primer 【第四版】第二章 变量和基本类型
- 【重学《C++Primer第四版》】第二章、变量和基本类型
- 第二章 变量和基本类型——2.2 字面值常量
- C++ Primer学习笔记:字面值常量使用小结
- VMware View(二)——安装VMware Composer
- 【黑马程序员】01-OC的特点
- 多媒体类 java
- LeetCode: Count and Say [037]
- ProtoBuffer
- 《C++ Primer第四版》学习笔记(四)变量和基本类型 - 字面值常量
- [leetcode] python Remove Duplicates from Sorted Array II
- 表空间传输
- JAVA顺序读取Properties文件
- OCP-1Z0-051 第150题 集合运算MINUS,INTERSECT
- 装逼第一弹——Fourier变换的意义(答强哥问)
- 黑马程序员---空中网面试题
- TCP协议3次握手/4次握手
- 绽放青春,播撒希望