C++ 中的原始字符串文字及C++ 中的字符串数组(1-2)
2023-06-13 09:15:05 时间
theme: channing-cyan highlight: a11y-dark
小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。
C++ 中的原始字符串文字
在 C++ 中,为了转义像“\n”这样的字符,我们使用一个额外的“\”。从 C++ 11 开始,我们可以使用未处理转义字符(如 \n \t 或 \” )的原始字符串。原始字符串的语法是文字以 R”( 开头,以 )” 结尾。
让我们看一个在 C++ 中查看原始字符串文字的示例:
// C++ 程序来演示原始字符串的工作。
#include <iostream>
using namespace std;
int main()
{
// A Normal string
string string1 = "juejin.\nFor.\njuejiners.\n" ;
// A Raw string
string string2 = R"(juejin.\nFor.\njuejiners.\n)";
cout << string1 << endl;
cout << string2 << endl;
return 0;
}
输出:
juejin.
For.
juejiners.
juejin.\nFor.\njuejiners.\n
C++ 中的字符串数组
在 C 和 C++ 中,字符串是一维字符数组,而 C 中的字符串数组是二维字符数组。声明它们的方法有很多,这里给出了一些有用的方法。
1. 使用指针:
我们实际上通过创建一个指针数组来创建一个字符串文字数组。
C 和 C++ 都支持这一点。
#include <iostream>
int main()
{
const char *colour[4] = { "Blue", "Red",
"Orange", "Yellow" };
for (int i = 0; i < 4; i++)
std::cout << colour[i] << "\n";
return 0;
}
输出
Blue
Red
Orange
Yellow
- 字符串的数量是固定的,但不是必须的。4 可以省略,编译器将计算正确的大小。
- 这些字符串是常量,它们的内容不能改变。因为字符串文字(字面意思是带引号的字符串)存在于内存的只读区域中,我们必须在此处指定“const”以防止可能导致程序崩溃的不需要的访问。
2. 使用二维数组:
当所有字符串的长度已知并且需要特定的内存占用时,此方法很有用。字符串的空间将在单个块中分配
这在 C 和 C++ 中都受支持。
#include <iostream>
int main()
{
// Initialize 2D array
char colour[4][10] = { "Blue", "Red", "Orange",
"Yellow" };
// Printing Strings stored in 2D array
for (int i = 0; i < 4; i++)
std::cout << colour[i] << "\n";
return 0;
}
输出
Blue
Red
Orange
Yellow
- 字符串的数量和字符串的大小都是固定的。同样,4 可能会被忽略,并且适当的大小将由编译器计算。但是,必须给出第二个维度(在本例中为 10),以便编译器可以选择合适的内存布局。
- 每个字符串都可以修改,但会占用第二维给出的全部空间。每个将在内存中彼此相邻布置,并且不能改变大小。
- 有时,需要控制内存占用,这将分配具有固定、规则布局的内存区域。
相关文章
- c++视频转字符画_c++字符数组转化为字符串
- C/C++常用控制台函数
- EasyC++01,从C++示例程序说起
- C++对象数组「建议收藏」
- C/C++学习路线
- c++实现strstr函数_C语言字符串数组
- C++基本概念_c语言 c++区别
- c++深拷贝和浅拷贝
- c++ char数组初始化_二维字符串数组初始化
- C++ 中的字符串数组(5 种不同的创建方式3-5)
- c++的链表-链表入门(C++)
- C++ 子集生成 Subset Generation
- C++字节流 cin cout细节
- C++调用虚函数的注意事项
- C++虚析构函数详解
- C++ static静态变量(无师自通)
- C++ tellg和tellp函数用法详解
- C++用指针变量作为函数的参数接受数组的值的问题详细总结
- C/C++中获取数组长度的方法示例
- 马尔可夫链算法(markov算法)的awk、C++、C语言实现代码
- C++实现旋转数组的二分查找
- Lua教程(六):绑定一个简单的C++类