我无法将字符串存储到数组中,然后我想将其用于比较
I am unable to store string into an array, which i then want to use for comparison
我无法将字符串存储到数组中,当我输出b[c]
时,没有出现任何内容,如何将其存储到数组?
int main(int argc, char *argv[])
{
string b[80000];
int c=0;
string s;
ifstream file(argv[1]);
while(file >> s) {
b[c]=s;
c++;
cout<<b[c];
}
system("pause");
return 0;
}
您正在打印空字符串。只需在c++;
之前移动cout << b[c];
我建议使用std::vector
,它将避免不必要的临时变量和神奇常数:
#include <iostream>
#include <vector>
#include <string>
#include <fstream>
int main(int argc, const char* argv[])
{
std::ifstream fin(argv[1]);
std::vector<std::string> v
{
std::istream_iterator<std::string>(fin),
std::istream_iterator<std::string>()
};
for(const auto& elem: v)
std::cout << elem << std::endl;
return 0;
}
当文件名未传递或文件不存在时,也不要忘记处理这些情况。
这可能适用于
while(file >> s) {
b[c]=s;
cout<<b[c];
c++;
}
相关文章:
- 比较并显示使用最小值(a,b)和最大值(a、b)升序排列的4个数字
- lambda参数转换为constexpr技巧,然后获取带链接的数组
- 为什么比较运算符如此快速
- 我可以使用 g++ 进行三种比较 (<=>) 吗?
- 如何声明特征矩阵,然后通过嵌套循环初始化它
- 比较字符数组
- 我正在尝试从输入文件中读取,然后使用它们的子字符串比较字符串的特定部分
- 比较字符串的 GetLine 工作一次,然后比较之后不起作用
- 我如何将一个变量与另一个变量进行比较,例如我想如果(var1 > var2 x 1),然后执行此 c++
- 比较 JSON::Value 变量中的数据,然后更新到文件
- c++ 输入一个数字来确定其他数字,然后比较它们
- 使用C++原子库,我应该使用什么样的内存顺序进行加载,然后进行比较交换
- 如何将一个数组的每个元素与另一个元素进行比较(如果存在),然后打印是,否则否
- 选择字符数组中的单词,然后一一比较它
- 如何比较两个向量中的两个值,然后在C++中更新向量值
- 更快的是:比较然后改变,或者立即改变
- 从文件中读取结果数据,加载它,比较它,然后打印显示
- QString::compare() vs 将 QString 转换为数字然后进行比较
- 我无法将字符串存储到数组中,然后我想将其用于比较
- 将字符串数组放入参数中,然后将元素与字面值字符串进行比较