如何解决为什么结构中的布尔成员不接受用户输入?
我正在创建一个名为struct Car的函数,该函数接收用户输入的int main几个成员值。成员之一是bool(isElectric),但我似乎无法弄清楚为什么在输入“ true”或“ false”后,该程序不允许我输入其他任何内容。输出失败的原因是否存在?
#include <iostream>
#include <string>
using namespace std;
struct Car {
string color;
string model;
int year;
bool isElectric;
double topSpeed;
};
int main() {
Car car1;
cout << "Enter information for Car 1." << endl;
cout << "Car Color?: ";
cin >> car1.color;
cin.ignore();
cout << "Car Model?: ";
getline(cin,car1.model);
cout << "Car Year?: ";
cin >> car1.year;
cout << "Is the car electric?: ";
cin >> car1.isElectric;
控制台:
Enter information for Car 1.
Car Color?: Yellow
Car Model?: Model S
Car Year?: 2020
Is the car electric?: true
Car Top Speed?: Enter information for Car 2.
Car Color?: Car Model?: Car Year?: Is the car electric?: Car Top Speed
解决方法
输入array = [1,2,3]
def custom_each(array)
double = Proc.new { |num| num * 2 }
count = 0
result =[]
while count < array.length
result << double.call(array[count])
count += 1
end
result
end
custom_each(array) # [2,4,6]
值的默认方式是整数bool
(代表false)或0
(代表true)。
要输入字符串1
,您需要使用std::boolalpha
操纵器:
"true"
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。