将字符串输入到多维数组中
Inputting string into multidimensional array
我正在尝试制作一个数组来容纳多个用户输入字符串,我疲倦的结构和动态数组,并且不起作用
我尝试制作一个固定字符串的结构,并尝试制作结构数组,但它不起作用
#include <iostream>
#include <string>
#include <limits>
using namespace std;
int main()
{
int rows;
cin >> rows;
string **arr = new string*[rows];
for( int i = 0; i < rows; ++i)
{
arr[i]= new string[1];
}
for(int i = 0; i < rows; ++i)
{
getline(cin, arr[i][0]);
cin.clear();
cin.ignore(numeric_limits<streamsize>::max(), 'n');
}
for(int i = 0; i < rows; ++i)
{
cout << arr[i][0] << 'n';
}
for( int i = 0; i < rows; ++i)
{
delete [] arr[i];
}
delete [] arr;
return 0;
}
它允许行 1输入,然后崩溃
使用std :: vector and std:字符串类型轻松完成作业:
#include <iostream>
#include <string>
#include <limits>
#include <vector>
using namespace std;
int main()
{
int rows;
cin >> rows;
std::vector<std::string> vec;
std::string s;
// flush cin
std::getline(std::cin, s);
for (int i = 0; i < rows; ++i)
{
std::getline(std::cin, s);
vec.push_back(s);
}
for (int i = 0; i < rows; ++i)
{
cout << vec[i] << 'n';
}
return 0;
}
cin.clear();
cin.ignore(numeric_limits<streamsize>::max(), 'n');
应该在错误的情况下进行,而不是在常规情况下进行。
demo
相关文章:
- 使用 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