C++ 基本的数据类型二 字符型常量的表示方法 字符串常量 类型转换

【C++】基本的数据类型(二)字符型常量的表示方法 字符串常量 类型转换

前文介绍了一些基本的数据常量,这里我们主要来接触字符常量和字符串常量。

首先,是最小单位的常量boolean常以及最简单的字符常量。

布尔类型常量只有true和false两个值,常用的赋值方式如 bool test=false;

字符常量分为可显示的字符常量和不可显示的字符常量:
1. 可显示的字符常量写在一对单引号之间,如'a'、 '2'、 ','、 ''等。这些字符常量是默认为char的,如果要定义wide-charater,我们要在定义的字符前加上L,如L'a'。

2. 不可显示的字符常量,主要是一些EscapeSequences(转义序列)。不可显示的字符常量及不会显示在程序的运行结果中,如空格、换行等。我们在编写这些操作的时候,通常用到转义序列,由一个反斜杠()开始,下面介绍一些在C++中常用的专业序列:

newlinenalter(bell)a
horizontaltabtbackslash\
verticaltabvquestionmark?
backspacebsinglequote'
carriagereturnrdoublequote"
formeedf

当然,我们可以用这个格式来书写其他的转义序列,如00,这里的000代表三个八进制数字,八进制数字的值代表这个字符的十进制的值。

下面列举的是一些用ASCⅡ字符来表示的字面常量:

7(bell)12(newline)40(blank)
(null)62('2')115('M')

同样,我们也可以利用十六进制的转义字符来表示一些字面常量,如 xddd。

—————————————————————————————————————————————————

前面介绍的字面常量都是由基本的内建型数据类型构成的,下面是关于字符串字面常量的一些介绍,这要更加复杂。字符串常量是由字符常量组成的阵列,他是在双引号中的字符常量,可以有零个或者更多个字符组成,也可以由转义序列组成。并且,正如widecharater literal,字符串也可以通过加上“L”前缀来定义。

为了与C兼容,C++的程序中会附加一个字符以配合那些C程序员输入的字符。每一个字符串的结尾都会由编译器附加一个null字符,及“”。

—————————————————————————————————————————————————

有字符串联,那么也就有字符串串联了。下面我们介绍串联字符串的表示方法。

串联字符串常量,就是由几个相邻的仅被空格、标记符(tab)或者换行符隔开的string literals(or widestring literals)组成。这种用法便于将很长的字符串分解成不同的行以方便定义及解读。如下:

std::cout<<"a multi-line"

"stringliteral"

"usingconcatenation"

<<std::endl;

当这段程序被执行的时候,就会显示出:
a multi-line string literal using concatenatiion

很简单的表达,但是,如果把一个string literal和一个wide string literal串联,该怎么办呢?

std::cout<<"multi-line"L"literal"<< std::endl; //Concatenating plain and wide character string isundefined

如果我们像上面这样把一个无格式的string literal和一个wide stringliteral串联在一起,那么结果就如注释所说,是不合法的。其实在部分编译器中,这个写法是可以的,但是很多的编译器并不能识别这种写法,因此,我们在进行程序的编写是,不要将两种不同类型的字符串串联在一起。

——————————

当然,还有一种更简单(或者说没有多大用途)的方法来处理这些比较长的字符串,就是通过在字符串的行末加上“”。这样,下一行的内容我们会认为跟这一行一在同一个字符串内的。如下:

//A""before a new line ignores the linebreak

std::cou

t<<"Hi"<<st

d::endl;

上面的语句和下面语句的作用是一样的

std::cout<<"Hi"<<std::endl;

那么,我们就可以把一个很长的字符串常量通过“”来隔开:

std::cout<< "a multi-line

string litreral

using a backslash"<<std::endl;

需要注意的是,利用反斜杠来分行的时候一定要把反斜杠写在每一行的最后(在反斜杠后面不能有注释或者空格),同样,下一行的文字不能有缩进,因为下一行的所有内容都是包括在这个字符串内的。

这几篇讲述了基本的数据类型和一些常量的表示方法,后面,我们会接触到变量的一些表示方法。

  

爱华网本文地址 » http://www.aihuau.com/a/25101011/98878.html

更多阅读

如何清理C盘的垃圾文件 win8电脑c盘怎么清理

如何清理C盘的垃圾文件?很多网友都会有这样的疑问,那么今天就和大家来分享下如何清理C盘的垃圾文件,请看下文:1、360的小工具里有个软件搬家功能 把你的软件和大的文件都移到其他盘。?2、首先你的C盘空间是多大的,还有你是否经常将软件

标点符号用法及数字、时间的表示方法 标点符号用法

标点符号用法及数字、时间的表示方法与数字、时间有关的表示方法  关于数字的用法,值得注意的是:我国有关规定近年来几经调整,目前最新确定的规范是《中华人民共和国国家标准·;出版物上数字用法的规定》。使用中应以新为宜,勿以旧规

基本数据类型的封装类 java基本类型的封装类

基本数据类型封装类booleanBooleanbyteByteshortShortintIntegerlongLongcharCharacterfloatFloatdoubleDouble基本数据类型的封装类1.基本类型的封装类(wrapper)用来存储数据,增强功能,使他们能通过“.”操作符完成一些操作。2.所

声明:《C++ 基本的数据类型二 字符型常量的表示方法 字符串常量 类型转换》为网友帮我找回爱分享!如侵犯到您的合法权益请联系我们删除