我是C ++的初学者。我正在读一本关于C ++的书。我使用g ++编译以下程序,这是本书中的一个例子:
/*modified fig1-1.cpp*/
#include <iostream>
using namespace std;
int main()
{
cout << "\n Enter an integer";
cin >> (int i);
cout << "\n Enter a character";
cin >> (char c);
return 0;
}
然后我收到以下错误消息:
fig1-2.cpp: In function 'int main()':
fig1-2.cpp:7:10: error: expected primary-expression before 'int'
cin >> (int i);
^
fig1-2.cpp:7:10: error: expected ')' before 'int'
fig1-2.cpp:9:10: error: expected primary-expression before 'char'
cin >> (char c);
^
fig1-2.cpp:9:10: error: expected ')' before 'char'
有谁能告诉我发生了什么?非常感谢你提前。
答案 0 :(得分:2)
int i
是声明的语法。它可能不会出现在表达式中,该表达式应遵循cin >>
。
首先声明你的变量,然后使用它:
int i;
cin >> i;
char c
:
chat c;
cin >> c;
我非常怀疑这是一本教授C ++的书中的一个例子。这是明显错误的语法。如果它真的在书中作为一个所谓的工作例子(即不解释错误),那么你应该得到一本不同的书。
答案 1 :(得分:0)
你不能像你一样使用你必须首先声明我或c,因为我已经这样做了
int main()
{
int i;
char c;
cout << "\n Enter an integer";
cin >> (i);
cout << "\n Enter a character";
cin >> (c);
return 0;
}