c++ - 什么是原始字符串?
问题描述
我在 C++17 草案 n4713 中遇到了这个代码片段:
#define R "x"
const char* s = R"y"; // ill-formed raw string, not "x" "y"
什么是“原始字符串”?它有什么作用?
解决方案
原始字符串文字是字符串文字,旨在更容易地包含嵌套字符,例如引号和反斜杠,这些字符通常具有分隔符和转义序列开头的含义。例如,它们对于编码 HTML 之类的文本很有用。例如,对比
"<a href=\"file\">C:\\Program Files\\</a>"
这是一个常规的字符串文字,与
R"(<a href="file">C:\Program Files\</a>)"
这是一个原始字符串文字。在这里,除了引号之外使用括号允许 C++ 将嵌套引号与分隔字符串本身的引号区分开来。
推荐阅读
- jquery - 试图从另一个函数访问数组
- javascript - 如何将 txt 文件中的数据转换为 Node 中的对象数组
- flutter - 在蜂巢颤动中保存对象列表
- go - How do I import annotations into proto?
- visual-studio-code - How can I solve this yeoman generator code error
- python - 使用python从oracle数据库中的多个表中获取数据并将这些数据插入到另一个表中
- c# - 仅当存在时如何检查linq中数组的第二个元素
- php - How to proxy Headless Wordpress WPGraphQL Plugin Endpoint with NGINX?
- json - Flutter - Pass variable to another screen for URL GET JSON
- bash - How can we rearrange a table with bash?