C++转义符及用法

C++ 转义符

这些转义序列用于表示 C++ 字符串和字符字面量中的特殊字符,+*?^$\.[]{}()|/ 这些符号需要用反斜杠来进行转义。

转义符字符含义ASIC符号十进制ASCII码十六进制ASCII码
\a振铃BEL70x7
\b退格BS80x8
\t水平制表符HT90x9
\n换行符NL(LF)100xA
\v垂直制表符VT110xB
\f换页FF120xC
\r回车CR130xD
\\反斜杠\920x5C
\"双引号340x22
\’单引号390x27
\?问号630x3F

例如,如果希望在字符串中包含双引号字符,则可以使用"转义序列来表示它。类似地,如果想在字符串中包含换行符,可以使用\n转义序列。

用法

下面是c++中使用转义序列的一个例子:

#include <iostream>

int main() {
    std::cout << "Hello, world!\n";
    std::cout << "This is a \"quoted\" string.\n";
    std::cout << "This is a\ttabbed\tstring.\n";
    std::cout << "This is a\bbackspaced string.\n";
    std::cout << "This is a\rreturn string.\n";
    std::cout << "This is a\fform feed string.\n";
    std::cout << "This is an\aalert (bell) string.\n";
    std::cout << "This is a\vvertical tabbed string.\n";

    return 0;
}

输出结果如下:

Hello, world! //换行
This is a "quoted" string. //转义使句子中显示双引号
This is a       tabbed  string. //a后面的内容空开一个制表符的距离
This is backspaced string. //退格符删除了前面的一个字符a
return string. //回车到行首,之后输出的内容从第一个字符开始替换
This is a
form feed string. //换页符 从a后面换一页显示
This is analert (bell) string. //响铃符 程序执行后会发出叮的一声
This is a
vertical tabbed string. //和换页符雷同

注意事项

在使用转义符时,需要注意:

  1. 在 C 和 C++ 中,所有的转义符都必须在字符串的开头或结尾位置出现。例如,对于 "It\'s a \"book\".\'号表示一个单引号,\"表示一个双引号。

输出结果为

It's a "book".
  1. 在某些情况下,转义序列可能会被忽略而不会被视为转义序列本身。例如,对于 "\t"(Tab)和 "\n"(Newline)来说,它们本身就是非法字符并且不会被视为空格或其他任何内容。但是在某些情况下它们可能会被视为空格或其他字符而非换行符。

  2. 在某些情况下,编译器可能会自动添加适当的转义序列以确保代码能够正确地编译和执行。例如,对于 C++ 代码中的泛型类型推导式 <T>(参数类型)或者枚举类型推导式 <Enum>(枚举类型)时就会自动添加适当的转义序列以确保代码能够正确地运行。

总之,正确使用转义序列是编写高质量 C/C++ 代码的关键之一。如果您遇到了任何问题或疑惑,请查阅相关文档或咨询您的编程教师或社区支持人员以获取更多帮助。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

传说中的暗暗

您的鼓励是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值