C 中的字符串输入
String Input in C++
#include<iostream>
using namespace std;
int main()
{
int a,b;
cin>>a;
cin>>b;
cout<<" "<<endl;
string c;
getline(cin,c);
int i=1;
int s=0;
while(c[i]!=' ')
{
if(c[i]=='1')
{
s+=a;
a=a*a;
i++;
}
else
{
a=a*a;
i++;
}
}
int r=s%b;
cout<<r;
return 0;
}
在此代码中,我想以形式输入
5 100
101
但是代码以形式输入
5 100 101
一旦我输入A的值,B Integer和按Enter进行字符串的输入即可终止代码有人可以解释为什么会发生这种情况,以及我如何避免
getline命令仅在一行中抬头,并且会停止关注第一行的newline。当您按Enter时,将插入新线,因此Getline会停止查看。要以两行观察,然后将两行组合成一个字符串,您可以执行以下
string c;
string d;
getline(cin, c);
getline(cin, d);
c = c + d;
一种替代方法是使用某些ProgrammerDude在他的评论中建议的内容,即忽略Newline。
注意:如果您想要100到101之间的空间,则可能需要在特定示例中的两行之间添加一个空间。
string c;
string d;
getline(cin, c);
c += " ";
getline(cin, d);
c = c + d;
相关文章:
- C++,在int数组中输入字符串或字符会输出0,而不是ascii或error
- 用户输入字符串的文件附加问题..C++
- 从 cin 读取不会返回整个输入字符串
- 输出返回编号。等于输入字符串的单词的字符串数
- 控制台未正确读取输入字符串
- 使用终止程序的指针在数组中输入字符串
- 如何删除用户输入字符串末尾的空字符?
- 在循环中使用 cin.get() 输入字符串
- 如何从输入字符串中提取特定位置的字符?
- 用户输入字符串的结构的搜索向量
- 无法使用 getline() 输入字符串.它只读取一个字符串
- 如何在 c++ 中读取输入字符串,忽略空格
- FSTREAM的问题读取确定,但不编写用户输入字符串
- boost::split会在输入字符串不是常量时更改输入字符串吗?
- 通过键盘输入字符串数组和 int 数组的数组大小
- Zlib 放气输入大于原始输入字符串的字符
- C 忽略输入字符串
- 获取一个输入字符串,将其转换为其十六进制值,然后将其十六进制存储为 int
- 我无法将 Excel 中的输入字符串存储为二维字符串
- 如何识别输入的输入字符串在 c++ 中是两个还是多个单词