11.转义字符

11.转义字符


11.1 知识点

转义字符的使用

什么是转义字符?

转义字符是字符串的一部分,用来表示一些特殊含义的字符。例如,在字符串中表示双引号、换行符、斜杠等。

示例代码:

// 错误示例:直接使用双引号会报错
string str = "韬"老狮";
cout << str << endl; // 报错,无法打印

// 正确示例:使用转义字符
string str = "韬\"老狮";
cout << str << endl; // 输出:韬"老狮

固定写法

使用 \ 符号作为转义字符前缀,不同的 \ 和字符的组合表示不同的含义。

常用转义字符

  • 双引号 \"

    string str = "韬\"老\"狮";
    cout << str << endl; // 输出:韬"老"狮
    
  • 换行 \n

    string str = "韬\n老\n狮";
    cout << str << endl;
    // 输出:
    // 韬
    // 老
    // 狮
    
  • 斜杠 \\
    用于表示文件路径中的反斜杠。

    string str = "E:\\Dropbox\\Dropbox";
    cout << str << endl; // 输出:E:\Dropbox\Dropbox
    
  • 空字符 \0
    用于表示字符串的结束标识。

    string str = "\0";
    cout << str << endl; // 输出为空
    

不常用转义字符(了解)

  • 制表符(Tab)\t

    string str = "韬\t老狮";
    cout << str << endl; // 输出:韬    老狮
    
  • 光标退格 \b

    string str = "韬\t老狮\b\b";
    cout << str;
    string str2;
    cin >> str2; // 用户输入内容后会覆盖掉退格部分
    
  • 警报音 \a

    string str = "\a";
    cout << str; // 触发系统警报音
    

取消转义字符

使用 R"(内容)" 语法,可以取消字符串中的转义字符,使其保持原样。

示例代码:

string str = R"(""""""取消转义字符\"\n\t\a)"; 
cout << str << endl;
// 输出:""""""取消转义字符\"\n\t\a

11.2 知识点代码

Lesson11_转义字符.cpp

#include <iostream>
using namespace std;
int main()
{
    std::cout << "转义字符\n";

    #pragma region 知识点一 转义字符的使用

    //什么是转义字符?
    //它是字符串的一部分 用来表示一些特殊含义的字符
    //比如:在字符串中表现 双引号 空行 斜杠等等
    //string str = "韬\""老狮";
    string str = "韬老狮";
    //cout << str << endl;//报错 无法打印


    //固定写法  \字符
    //不同的 \和字符的组合 表示不同的含义


    //常用转义字符

    // 双引号 \"
    str = "韬\"老\"狮";
    cout << str << endl;//韬"老"狮

    // 换行 \n
    str = "韬\n老\n狮";
    cout << str << endl;
    //韬
    //老
    //狮

    // 斜杠 \\  计算机文件路径 是要用到\符号的
    str = "E:\\Dropbox\\Dropbox";
    cout << str << endl;//E:\Dropbox\Dropbox

    // 空字符 \0 用来表示字符串是否结束的 作为字符串结束的标识的
    str = "\0";
    cout << str << endl;



    //不常用转义字符(了解)

    // 制表符(空一个tab键)  \t
    str = "韬\t老狮";
    cout << str << endl;//韬      老狮

    // 光标退格  \b 
    str = "韬\t老狮\b\b";
    cout << str;
    string str2;
    cin >> str2;

    // 警报音  \a
    str = "\a";
    cout << str;

    #pragma endregion

    #pragma region 知识点二 取消转义字符

    //固定语法
    //使用 R"(内容)" 语法 包裹想要不被转义的字符串
    str = R"(""""""取消转义字符\"\n\t\a)";//""""""取消转义字符\"\n\t\a
    cout << str << endl;

    #pragma endregion
}

11.3 练习题

写出至少5种转义字符

以下是至少5种转义字符的示例:

  • \n 换行
  • \\ 反斜杠
  • \" 双引号
  • \0 空字符
  • \t 制表符
  • \b 退格
  • \a 响铃

用至少两种方式在控制台打印

我是小明  
我今年18  
我的爱好是制作游戏  
我要好好学习,天天向上  

方法一:单行字符串

cout << "我是小明\n我今年18\n我的爱好是制作游戏\n我要好好学习,天天向上\n";

方法二:多行字符串

cout << "我是小明\n";
cout << "我今年18" << endl;
cout << "我的爱好是制作游戏" << endl;
cout << "我要好好学习,天天向上" << endl;

11.4 练习题代码

Lesson11_练习题.cpp

#include <iostream>
using namespace std;
int main()
{
    std::cout << "转移字符练习题\n";

    #pragma region 练习题一

    //请写出至少5种转义字符

    // \n \\ \" \0  \t  \b  \a

    #pragma endregion

    #pragma region 练习题二

    /*请用至少两种方式在控制台打印出:
    我是小明
    我今年18
    我的爱好是制作游戏
    我要好好学习,天天向上*/

    cout << "我是小明\n我今年18\n我的爱好是制作游戏\n我要好好学习,天天向上\n";

    cout << "我是小明\n";
    cout << "我今年18" << endl;
    cout << "我的爱好是制作游戏" << endl;
    cout << "我要好好学习,天天向上" << endl;

    #pragma endregion

}


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 785293209@qq.com

×

喜欢就点赞,疼爱就打赏