c++ - 为什么我的整数不能转移到数组中?
问题描述
我想制作一个适用于使用空格输入而不是输入的整数的程序。当您输入每个整数12 80 33 99
之间有空格的整数时,代码将分隔整数并将它们放入一个数组中。
我正在使用代码块,C++
int main(){
int A;
int j [10] ={0,0,0,0,0,0,0,0,0,0};
cin >> A;
string As;
bool code = true;
int hasil [A][10];
getline(cin,As);
for (int i = 0 ; i < A ; i++){
while (code){
if( cin.get() != '\n'){
cin >> hasil[i][j[i]];
j[i]++;
}else{ code = false;}
}}
for (int i = 0 ;i < A ; i++){
for (int x = 0; x != j[i]; x++){
cout << hasil[i][x]<< " " ;
}
cout << " " << endl;
}
return 0;}
当我输入 时25 17 70 88
,我期望输出25 17 70 88
也是,但实际输出是5 17 70 88
. 我的第一个在哪里2
?
解决方案
您2
被读取一个字符的调用吃掉了,cin.get()
然后您的代码将其丢弃。
推荐阅读
- telegram-bot - 使用 smooch 电报和 zendesk 的主动消息
- ios - IOS 13 中的 setAlternateIconName
- sas - 如何在开启 sas 的同时运行脚本
- css - vw 单位中的 Div 和文本不会在 Safari 中一起调整大小
- javascript - vuejs:第 3 方库中的“this”是“未定义”
- c++ - 如何有效地求和 SSE 128 位浮点寄存器的所有元素?
- fix-protocol - 如何为每个会话设置不同的“ResetOnLogon”?
- php - Woocommerce 将属性添加到特定的 Hook
- amazon-web-services - AWS Cloud Formation 在创建之前删除资源
- python - Django API:如何保存/另存为项目?