Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/153.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
致命错误:';stdafx.h';找不到文件 我是一个新的C++程序员,我想通过网站学习自己(虽然我已经被编译在我的第一个程序=)(他们使用VisualStudio来编程他们的代码,因为我使用的是MacBook,我只使用vi和终端(或者我应该用别的东西吗?)< /P>_C++_C - Fatal编程技术网

致命错误:';stdafx.h';找不到文件 我是一个新的C++程序员,我想通过网站学习自己(虽然我已经被编译在我的第一个程序=)(他们使用VisualStudio来编程他们的代码,因为我使用的是MacBook,我只使用vi和终端(或者我应该用别的东西吗?)< /P>

致命错误:';stdafx.h';找不到文件 我是一个新的C++程序员,我想通过网站学习自己(虽然我已经被编译在我的第一个程序=)(他们使用VisualStudio来编程他们的代码,因为我使用的是MacBook,我只使用vi和终端(或者我应该用别的东西吗?)< /P>,c++,c,C++,C,以下是我根据教程编写的helloworld.cpp程序: #include "stdafx.h" #include <iostream> { std::cout <<"Hello World!" <<std::end1; return 0; } 有人能告诉我如何解决这个问题吗?两个问题: a) 不需要stdafx.h(如其他人所述)。 b) “end1”应该是“endl”(注意字母“l”和数字“1”) stdafx.h是Visual St

以下是我根据教程编写的helloworld.cpp程序:

#include "stdafx.h"
#include <iostream>
{
     std::cout <<"Hello World!" <<std::end1;
     return 0;
}
有人能告诉我如何解决这个问题吗?

两个问题: a) 不需要stdafx.h(如其他人所述)。 b) “end1”应该是“endl”(注意字母“l”和数字“1”)

  • stdafx.h
    是Visual Studio使用的预编译头,您不需要它
  • 您似乎遗漏了
    int main()
    函数
  • 它是
    std::endl
    而不是
    std::end1
  • 比如说:

    #include <iostream>
    int main() {
         std::cout << "Hello World!" << std::endl;
         return 0;
    }
    
    #包括
    int main(){
    
    std::cout
    stdafx.h
    是一个预编译的头文件,它特定于Visual Studio。 预编译头文件是毫无价值的,除非你面临着缓慢的编译时间。在你的程序中,你根本不需要它们,所以你可以删除它,一切都会好起来

    您可能会猜测,如果不需要,那么我们为什么要包括它们

    我会解释: 每当我们添加头文件(
    #include
    )时,编译器将遍历它,检查它,然后在编译CPP文件时编译头文件

    对包含头文件的每个CPP文件重复此过程

    如果在一个项目中有1000个CPP文件,其中必须包含xyz.h头文件,那么编译器将编译
    xyz.h
    文件1000次。这可能需要相当长的时间


    为了避免这种情况,编译器给我们提供了“预编译”头文件的选项,这样头文件将只编译一次,以加快编译时间。

    您是否尝试过删除带有错误的行?删除
    #包括“stdafx.h”
    。您不需要该文件,只需将其删除即可。它是针对Visual Studio特有的
    预编译标头的,这是您稍后将介绍的概念。欢迎使用SO!@self这对初学者来说不是一个好建议-如果您教他们删除导致问题的每一行,他们很快就会得到一个空白文档.@Jackie使用
    endl
    (E-N-D-L),而不是
    end1
    (E-N-D-one)
    #include <iostream>
    int main() {
         std::cout << "Hello World!" << std::endl;
         return 0;
    }