fatal error C1083: Cannot open include file: ✀Stack.h✀: No such file or directory

2024-11-06 06:38:12
推荐回答(5个)
回答(1):

编译器没有找到Stack.h文件,有3个办法可以解决
1. 将Stack.h文件和你的主文件放在同一个文件夹里
2. 在 include 时指明 Stack.h 的相对路径。 比如你的Stack.h在上层目录的include文件夹下,那就写 #include "../include/Stack.h"
3. 在编译选项里面加上 Stack.h 文件的路径 -I ../include

另外,你的Stack.h文件少了一个define定义 。正确的格式是:
#ifndef _Stack_h
#define _Stack_h
...
... //这里是你的头文件实际代码
...
#endif

这样写才能保证你的Stack.h不会被重复包含。

回答(2):

使用的是 "<>" 尖括号的话,
表示让编译器在系统头文件夹中查找对应名字的头文件,

当使用""""引号时,就是让编译器在当前程序目录下查找对应名字的头文件,如果没有找到,则编译器会再在系统头文件夹中查找该头文件.

所以,这里,你应该把
#include
改为
#include "class.h"

还有,
你上面的程序的写法是不标准的,(但是能通过许多编译器)
应该这么写

#include // 注意,标准中,系统头文件不推荐加 .h,类似地有 而不是
#include "class.h"
using namespace std; // 使用标准的名空间

int main(int argc, char *argv[]) // 标准 C++中 必须显式的申明 main 的返回值类型,不写的话有些编译器默认是 int 型
{
float l, w, h;
...
...
..
p[i].OutPut();
}

return 0; // 记得返回值
}
另外,团IDC网上有许多产品团购,便宜有口碑

回答(3):

把主文件和Stack.h文件放在相同的目录下,然后include "Stack.h";应该就可以了

回答(4):

把主文件和Stack.h文件放在相同的目录下面试试。然后到那个目录下面编译。

回答(5):

#include
#include
#include "Stack.h"
用这样的次序看看如何