当我尝试编译以下代码时,我不断收到expected primary-expression before '<<' token
编译错误消息。我很确定它与endl有关;因为当我删除&#39;&lt;&lt; ENDL; &#39;从代码的每个部分,它工作正常
#include <cstdlib>
#include <iostream>
using namespace std;
int num1 = 0;
int funcNum1()
{
cout << num1; << endl;
int num1 = 2;
cout << num1; << endl;
return 0;
}
int main(int argc, char *argv[])
{
cout << num1; << end1;
int num1 = 1;
funcNum1();
cout << num1; << end1;
system("PAUSE");
return 0;
}
答案 0 :(得分:1)
您在第cout << num1; << end1;
行中犯了错误,将其更改为
cout << num1 << endl;
在代码中的两个位置都可以看到它。
答案 1 :(得分:0)
从这段代码中可以看出,num1
之后你有分号。删除此分号(您的函数中也存在此问题)。此外,endl
中的数字1而不是l。修复这两个错误,它应该可以工作。
int main(int argc, char *argv[])
{
cout << num1; << end1;
int num1 = 1;
funcNum1();
cout << num1; << end1;
system("PAUSE");
return 0;
}
答案 2 :(得分:0)
在main()中你的语法是关闭的:
int main(int argc, char *argv[]) {
cout << num1 << endl; // watch the semicolons, use "endl" not "end1"
int num1 = 1;
funcNum1();
cout << num1 << endl; // watch the semicolons, use "endl" not "end1"
system("PAUSE"); // system needs #include <stdlib.h>
return 0;
}
你需要&#34; stdlib.h&#34;它嵌入在&#34; cstdlib&#34;用于访问system()方法的标头:看一下documentation