【发布时间】:2011-05-03 10:20:46
【问题描述】:
大家好,我正在设计一个 C++ 程序,它读取一个或多个以负数结尾的正实数序列。为了测试这是否正确完成,我正在输出用户输入的第 5 个数字。我正在使用 while 循环来填充我的数组但是,我的 cin.get(x) 使我的程序无法编译。请帮助我修复我的代码。
P.S 如果有任何帮助,这是编译器错误:
solution1.cpp:在函数
‘int main()’:
solution1.cpp:19:错误:没有匹配函数调用‘std::basic_istream<char, std::char_traits<char> >::get(int&)’/usr/include/c++/4.4/istream:280:
注意:候选人是:typename std::basic_istream<_CharT, _Traits>::int_type std::basic_istream<_CharT, _Traits>::get() [with _CharT = char, _Traits = std::char_traits<char>]/usr/include/c++/4.4/istream:294:
注意:std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::get(_CharT&) [with _CharT = char, _Traits = std::char_traits<char>]/usr/include/c++/4.4/istream:321:
注意:std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::get(_CharT*, std::streamsize, _CharT) [with _CharT = char, _Traits = std::char_traits<char>]/usr/include/c++/4.4/istream:332:
注意:std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::get(_CharT*, std::streamsize) [with _CharT = char, _Traits = std::char_traits<char>]/usr/include/c++/4.4/istream:355:
注意:std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::get(std::basic_streambuf<_CharT, _Traits>&, _CharT) [with _CharT = char, _Traits = std::char_traits<char>]/usr/include/c++/4.4/istream:365:
注意:std::basic_istream<_CharT, _Traits>& std::basic_istream<_CharT, _Traits>::get(std::basic_streambuf<_CharT, _Traits>&) [with _CharT = char, _Traits = std::char_traits<char>]
#include <iostream>
using namespace std;
int main()
{
char num[100] = {0};
int y = 0;
int x = 0;
int flag = 0;
cout << "Please enter line of numbers: ";
while (flag > 0)
{
cin.get(x);
if (x < 0)
{
flag = -1;
}
else
{
num[y] = x;
y = y + 1;
}
}
cout << " " << num[4] << endl;
return 0;
}
【问题讨论】:
-
“哎呀!确保你缩进你的代码!”,正如有人在another of your questions上所说的那样。
标签: c++