gpt4 book ai didi

c++ - 在我按下 ENTER 后,程序没有输出任何结果。为什么会这样?

转载 作者:行者123 更新时间:2023-11-30 03:44:54 25 4
gpt4 key购买 nike

我是 C++ 新手。我在网上看到这段代码。在我按下 ENTER 后,程序没有输出任何结果。为什么会这样?有人可以帮帮我吗?在此先感谢您的帮助!

int main(){
const string hexdigits = "0123456789ABCDEF";
cout << "enter a series of numbers between 0 and 15 separated by spaces. Hit ENTER when finished: "
<< endl;
string result;
string::size_type n;
while(cin >> n){
if(n < hexdigits.size()){
result += hexdigits[n];
}
}
cout << "your hex number is: " << result << endl;
}

我已经输入了:

12 0 5 15 8 15

最佳答案

您的输入循环将继续读取整数,直到输入流关闭或遇到无法解析为整数的内容。每个值由任何空格分隔,其中包括换行符

如果你想为输入的每一输出一些新的东西,你可以使用std::getline首先读取字符行,然后从中读取>std::istringstream:

string line;
while( getline( cin, line ) )
{
istringstream iss( line );

string result;
string::size_type n;
while(iss >> n){
if(n < hexdigits.size()){
result += hexdigits[n];
}
}
cout << "your hex number is: " << result << endl;
}

关于c++ - 在我按下 ENTER 后,程序没有输出任何结果。为什么会这样?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35144955/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com