在for循环外显示句子数组
Displaying sentence array outside of for loop
我在for循环外显示句子数组时遇到问题
int example(string sentence)
{
int i = 0;
for (i; 1 < 50; i++)
{
cout<<sentence[i]<<endl;
}
cout<<sentence[i]<<endl;
return 0;
}
for循环外,句子[i]没有显示句子[49]中的字符有人能告诉我原因吗?
试试这个
int example(string sentence)
{
int i = 0;
for ( ; i < 50; i++)
{
cout<<sentence[i]<<endl;
}
cout<<sentence[i]<<endl;
}
要检查i是否小于50,而不是1是否小于50,因为这总是为真并且循环永远不会终止。此外,在我发布的代码片段中, I 在循环后的值为50,因此最好有第51个元素(基于0的数组)。
不显示sentence[49]
的原因是循环运行后i为50。循环中的i++
在循环迭代运行后增加i 。所以当i等于49时,它将运行循环然后将i增加到50。然后它来到条件i < 50
它看到i
现在是50循环终止了。然后,当您在循环外调用sentence[i]
时,它试图显示sentence[50]
。要获取sentence
中的最后一个字符,我建议使用以下方法之一:
cout << sentence[i - 1] << endl;
或者更容易读的:
cout << sentence.back() << endl;
相关文章:
- Mongodb c++驱动程序:如何查询元素的数组
- 将数组的地址分配给变量并删除
- 从C++本机插件更新Vector3数组
- lambda参数转换为constexpr技巧,然后获取带链接的数组
- 将数组作为参数传递给函数安全吗?作为第三方职能部门,可以探索他们想要的之外的其他元素
- 数组索引的值没有增加
- 将对象数组的引用传递给函数
- 为char数组调整zlib-zpipe
- 2D数组来自文本输入,中间有空格
- std::向量与传递值的动态数组
- 在c++中用vector填充一个简单的动态数组
- 使用strcpy将char数组的元素复制到另一个数组
- 该程序将.csv文件中的一系列单词放入数组中,然后随机生成句子.但它不起作用
- 如何输入每个单词在字符串数组中的句子,直到用户按Enter键
- 与教科书上关于未调整大小的数组初始化C++句子的混淆
- 动态分配的数组C 读取句子并打印单词
- 数组基于 C++ 中的句子
- 将.txt文件中的完整句子输入到数组中
- 在for循环外显示句子数组
- 如何将输入的句子中的单词放入数组中?C++