c++ - 为字符串指针赋值

标签 c++ string

我目前正在分析 char 和 string 数据类型。对于 char 数据类型,以下代码片段适用于:

char value = 'a';
char value1[] = "Good";
char* value2 = "Good";

对于字符串,

string strValue = "Good";
string strVal[3] = {"Good","Better","Best"};

但是下面的赋值会抛出编译错误:

"error: scalar object strPtr requires one element in initializer"

string* strPtr = {"Good","Better","Best"}

那么,最初如何给上面的string*赋值呢?

谢谢, 乌达语

最佳答案

指针不是数组,那你为什么要假装不是呢?不过你可以这样做

string strVal[3] = {"Good","Better","Best"};
string* strPtr = strVal;

关于c++ - 为字符串指针赋值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11682285/

相关文章:

c++ - 非托管 C++ 库 - VS2005 和 VS2008 之间的区别?

Java Scanner 读取特殊格式的行

c++ - 对 `librarymanager::getBook(std::basic_string<char, std::char_traits<char>, std::allocator<char>>) 的 undefined reference

java - 如何混合处理Java字符串

c# - 访问字符串中的字符与在 C# 中转换为字符数组

c++ - 纯右值的结果

c++ - QR 码的节省空间的替代方案?

c++ - 为什么我不能在 lambda 中捕获这个通过引用 ('&this' )?

c++ - 为什么reinterpret_cast在私有(private)继承中起作用

php - 如果文本描述旁边包含图像,如何对齐?