【发布时间】:2015-06-15 16:02:32
【问题描述】:
我是 C++ 和一般编码的新手。我知道有逻辑错误,但我无法识别它。我正在尝试输入十进制,并将输出连接为十六进制。即使控制变量显然还不是 0,它似乎也只运行一次循环。
int main()
{
long rem = 0,
int hex = 0;
cout << "enter the number to convert ";
cin >> rem;
hex = rem / 16;
while (rem > 0)
{
rem = rem % 16;
hex = hex + rem;
cout << hex << "" << rem << endl;
rem = rem / 16;
}
return 0;
}
【问题讨论】:
-
如果您只想以十六进制打印数字,请尝试:stackoverflow.com/questions/3649026/…
-
cout << hex应该是cout << std::hex。你的实际代码输出你的局部变量hex。
标签: c++