如何从用户那里接收多个字符串并将这些字符串添加到 c++ 中的数组中?
How to receive multiple strings from a user and add those string to an array in c++?
我是 c++ 的初学者,我有一个问题,
我想从用户那里接收多个字符串,并将每个字符串添加到 c++ 中的数组中。
例如:
输入:
cin >> "sara";
cin >> "jack";
cin >> "john";
输出:
string_of_names = {"sara", "jack", "john"}
这是我尝试过的:
#include <iostream>
using namespace std;
int main()
{
const int N = 200;
char string[N];
for (int i=0; i < 3; i++)
{
cout << "Enter a name: " << endl;
cin >> string;
}
cout << string;
return 0;
}
但在这种情况下,我认为每个字符串都会被新字符串替换。
您是否尝试过使用 c++ stl 的容器 std::vector?
这样就行了。
#include <iostream>
#include <vector>
#include <string>
using namespace std;
int main() {
//this is a dynamically resizable container that works like an array
//with O(1) index access complexity
vector<string> dynamicArray;
string inputString;
cin>>inputString; //"sara"
dynamicArray.push_back(inputString); //add to the vector
cin>>inputString; //"jack"
dynamicArray.push_back(inputString); //add to the vector
cin>>inputString; //"john"
dynamicArray.push_back(inputString); //add to the vector
//view the elements of the vector
for(int i=0; i < dynamicArray.size(); i++){
cout<<dynamicArray[i]<<endl;
}
}
好的,我的回答是基于您不能使用常见的C++功能,例如std::vector
和std::string
。出于某种原因,您被困在不幸的是C++太常见的方言中,它只是带有 C,带有C++ I/O。有关正确的C++答案,请参阅 xlr8 的帖子。
首先要意识到的是,您需要一个二维的字符数组。一个维度是因为字符串有多个字符,第二个维度是因为您需要多个字符串。所以
const int NUM_STRINGS = 3;
const int MAX_STRING_SIZE = 200;
char string_array[NUM_STRINGS][MAX_STRING_SIZE];
然后,您必须调整代码,以便说出您感兴趣的字符串数组中的哪个字符串。
for (int i = 0; i < NUM_STRINGS; i++)
{
cout << "Enter a name: " << endl;
cin >> string_array[i];
}
最后,您还需要一个循环来输出字符串数组
for (int i = 0; i < NUM_STRINGS; i++)
{
cout << string_array[i] << 'n';
}
相关文章:
- 如何将字符串添加到布谷鸟过滤器?
- 将常量字符串添加到非常量字符串是否会给出常量字符串
- 如何在C++中为字符串添加字符?
- 在特定位置为字符串添加空格
- 有没有办法将字符串添加到 Vector 中,但前提是它尚不存在?->C++
- 是什么使这个以'+'开头的字符串添加成为有效的语句?
- 如何使用函数将字符串添加到向量中
- 如何在 c++ 中将字符串添加到动态数组?
- 向字符串添加字符
- 向字符串添加位值
- 如何从用户那里接收多个字符串并将这些字符串添加到 c++ 中的数组中?
- 字符串添加数字 C++
- std::字符串添加到字符*
- C++ 向字符串添加"u"
- JSONCPP正在向字符串添加额外的双引号
- C 将N字符串添加到字符串流中
- 以简单且更少的代码方式将字符串添加在一起
- 字符串添加或减法操作员
- 将字符串添加到2D数组并显示COUT消息(没有错误消息?)的错误
- 如何使用递归向字符串添加逗号