[英]Compiler errors from simple Visual C++ project
我正在尝试使程序运行。 当我在win32 project / .cpp文件中尝试Hello World时,出现一堆错误
1> ------构建开始:项目:HelloWorld3,配置:调试Win32 ------ 1>正在编译... 1> hello.cpp 1> ... \\ projects \\ helloworld3 \\ helloworld3 \\ hello。 cpp(7):错误C2065:'cout':未声明的标识符1> ... \\ projects \\ helloworld3 \\ helloworld3 \\ hello.cpp(7):错误C2001:换行符为常量1> ... \\ projects \\ helloworld3 \\ helloworld3 \\ hello.cpp(8):错误C2143:语法错误:缺少';' 在“返回”之前1>构建日志保存在“文件:/ ... \\ Projects \\ HelloWorld3 \\ HelloWorld3 \\ Debug \\ BuildLog.htm” 1> HelloWorld3-3个错误,0个警告
#include <iostream>
int main()
{
cout <<"Hello World!<<endl;
return 0;
}
cout在名称空间“ std”中,因此您有两个选择:
使用std作为前缀
std :: cout <<“ Hello World” << std :: endl;
声明您正在使用命名空间std
使用名称空间std;
1> ... \\ projects \\ helloworld3 \\ helloworld3 \\ hello.cpp(7):错误C2065:“ cout”:未声明的标识符
这是说它不知道什么是cout。 在C ++中,名称可以位于名称空间中。 如果是cout,则位于名称空间std中。 您可以通过两种方式告诉编译器:
using namespace std;
这告诉编译器将名称空间std中的所有名称引入当前名称。 ::
。 就像在std::cout
一样,您在这里告诉编译器确切的位置。 1> ... \\ projects \\ helloworld3 \\ helloworld3 \\ hello.cpp(7):错误C2001:常量中的换行符
该错误表明编译器正在查看一个常量(在本例中为字符串),并且在不需要的地方找到了换行符。 这几乎总是缺少结尾的报价。
#include <iostream>
int main()
{
std::cout << "Hello World!" << std::endl;
return 0;
}
您需要使用std::cout
和std::endl
而不是cout
和endl
,或者在#include
之后执行此操作:
using namespace std;
using
子句使您的代码更简洁,但是在大型程序中,可能很难跟踪名称的来源,因此最好使用更详细但更明确的std::cout
/ std::endl
。
您还缺少此处的结束语:
cout <<"Hello World!<<endl;
你应该有:
cout << "Hello World!" << endl;
ee1234。 看到这很可能是您的第一个C ++程序,请访问CPlusPlus.com,它具有非常简单而基本的教程。 这就是我第一次跳入c ++时的起点。 就好书而言,只需在SO上搜索“ C ++书”就可以了,您应该有很多关于适当的初学者->高级书的好帖子。
由于cout存在于标准名称空间中,因此您应该包括
using namespace std;
在代码的开头,在您的include下,或在每个函数调用前使用std ::。 在为字符串放置开头引号时,还应始终包含结尾引号。 这导致
std::cout << "Hello World!" << std::endl;
另一种写法是:
std::cout << "Hello World!\n";
\\ n将导致换行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.