首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >每种类型都有对应的文字吗?

每种类型都有对应的文字吗?
EN

Stack Overflow用户
提问于 2014-03-05 13:12:00
回答 6查看 203关注 0票数 0

根据Bjarne的编程原则和使用[**int**,C++的实践(第六次印刷,2012年11月),“每一种类型都有自己的文字风格:char**,** string**,和** bool**]”(临63)。

在同一本书的第A.2节中,还提到了int (无符号;long)和浮点文字的其他变体,以及(null)指针文字。

每种类型都有对应的文字?吗?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2014-03-06 04:30:13

Bjarne的编程原则和使用C++的实践(第六次印刷,2012年11月)将ISO/IEC 14882:2003作为相关的C++标准。在这方面,可以找到相关的第2.13节,内容如下:

代码语言:javascript
复制
2.13 Literals

There are several kinds of literals.

literal:
    integer-literal
    character-literal
    floating-literal
    string-literal
    boolean-literal

显然,这是一个详尽的列表;而且由于该列表中可能有更多的类型,所以答案是:不是,不是每种类型都有相应的文字.

注:关于C++11一案,请见https://stackoverflow.com/a/22199042/82216

票数 0
EN

Stack Overflow用户

发布于 2014-03-05 13:22:45

C++ n3337 § 2.14.1/1: 有几种文字。 字面上: 整数字 字符-文字 浮动文字 字符串-文字 布尔-文字 指针-文字 用户定义-文字

不,不是艾弗里类型有文字。类没有文字,比如voidint*signed charunsigned charshortunsigned short

文字解释说:

integer-literal

整数文字是指没有句点或指数部分的数字序列。

示例:1

character-literal

字符文字是以单引号括起来的一个或多个字符,如在‘x’中,可选择地在字母u、U或L之前加上一个字母,如u‘y’、U‘z’或L‘x’。

C-char序列

U‘c-char序列

U‘c-char序列

C-char序列

例子:'a''ab''\''L'0''('

floating-literal

浮点数由整数部分、小数点、分数部分、E或E、可选带符号整数指数和可选类型后缀组成。整数部分和分数部分都由十进制(基数为10)的数字组成。可以省略整数部分或分数部分(不是两者兼而有之);小数点或字母e(或E)和指数(不是两者兼而有之)都可以省略。整数部分、可选小数点和可选分数部分构成浮点文字的重要部分。指数,如果存在的话,表示10的幂,其中重要的部分将被缩放。

例子:123.456e-67.1E1f42.,13e3

string-literal

字符串文字是由双引号包围的一系列字符(如2.14.3中定义的),可选前缀为R、u8、u8R、U、UR、u、uR、L或LR,如“.”、R“(.)”、u8“.”、u8R“(.)”、u“.”、uR"*̃(...)*̃“、U”.“、UR”zzz(.)zzz“、L”.“。或LR“(.)”。

编码-前缀“s-char-sequenceopt”

编码-前缀R原始字符串

例子:"me"L"you"

boolean-literal

布尔文本是关键字falsetrue。这样的文字是prvalues,并具有bool类型。

代码语言:javascript
复制
false
true

pointer-literal

指针文字是关键字nullptr。它是一个std::nullptr_t类型的prvalue。

代码语言:javascript
复制
nullptr

user-defined-literal

operator""过载,允许使用用户定义的逻辑解释文字。

示例:

代码语言:javascript
复制
typedef double signalf;
constexpr signalf operator"" _percent( long double val) { return val / 100 ; }

std::cout  << 12.34_percent; // prints 0.1234
票数 5
EN

Stack Overflow用户

发布于 2014-03-05 13:14:15

int*没有文字。最接近的是nullptr,但它的类型是nullptr_t

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22198779

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档