C++ ,字符串数组
C++ , Array of strings
我只是想知道如何创建一个字符串数组。我希望制作一个由 10 个字符串组成的数组,每个字符串可以有 20 个字符。
#include <iostream>
int main()
{
char a[10] , str[20];
for (int x = 0 ; x<10 ; x++)
{
for (int y = 0 ;y<20; y++ )
{
cout<<"String:";
cin>>str[y];
a[x]=str[y];
}
}
for (int j = 0 ; j<10 ; j++)
cout<<a[j]<<endl;
return 0;
}
C++新手,思想开放:)
不如改用
std::vector<std::string> my_strings(10); // vector of 10 strings
这种方式比静态大小的char
数组要容易得多。
然后,您将获得std::vector
容器的所有功能,包括动态大小。
您还可以获得std::string
类的所有漂亮功能。
你在做的是更多的C方法。
无论如何:
char strings[10][20];
//Accessing each string
for(int i = 0; i < 10; i++)
{
//Accessing each character
for(int j = 0; j < 20; j++)
{
char character = strings[i][j];
}
}
在 c++ 中,您宁愿使用:
std::string strings[10];
或者最好的选择是:
std::vector<std::string> strings(10);
在 C++ 11 中,您可以像这样迭代上一种情况:
for(auto singleString : strings)
{
}
按优先顺序:
10 个字符串的向量:
std::vector<std::string> aVector(10);
一个包含 10 个字符串的数组:
std::string anArray[10];
如果您确实想使用以零结尾的 C 字符串:
typedef char MyString[21]; // 20 + 1, for the terminating zero
MyString arrayOfThem[10];
或者,更神秘的变体
char anArray[10][21];
相关文章:
- 使用 jsoncpp 解析 json 数组字符串
- C++ 对象数组字符串输入在控制台上不起作用
- 插入了 C++ 数组字符串数据,但在显示输出时不显示
- 无法区分 JSON 对象/数组/字符串
- 为什么数组(字符串类型)的大小是 24 字节,带有单个空格元素
- 如何使用数组字符串进行输入验证
- (C++) 打印字符数组字符串的单词时出现问题
- 使用Back_inserter从任何位置的输入字符中使用Back_inserter进行过滤数组字符串
- C 函数反转字符数组字符串
- 如何在 c++ 中创建数组(字符串 [] )的向量
- 如何返回数组字符串的指针
- char数组字符串混淆
- 如何从字符数组字符串中提取空格
- 是否可以将 Bitset<8> 的值复制到数组字符串而不转换它们?
- C++数组字符串函数
- 如何在函数中操作字符数组(字符串)的指针,该指针在C / C ++中作为参数传递
- visual将音频文件存储到数组/字符串流C++中
- c++在char数组(字符串)上将what替换为
- 将数组字符串转换为intger c++(初学者)
- 需要设置数组字符串长度,使其恰好为13