包含文件中的问题

时间:2011-01-13 14:30:10

标签: c++

我想用下面的代码编写两个程序(.h和.cpp)并在.cpp中使用.h文件,但是当我在TC中运行时发生错误

.h文件

#ifndef ADD_H
#define ADD_H

int add(int x, int y)
{
     return x + y;
}

#endif

.cpp文件

#include <iostream.h>
#include <conio.h>
#include "Add.h"

void main()
{
    clrscr();
    cout << "Sum of 3 and 4 :" << add(3, 4);
    getch();
}

错误

  

无法打开包含文件“Add.h”

3 个答案:

答案 0 :(得分:2)

您应该考虑以下几点:

  • 头文件的位置(搜索路径)取决于实现,包括<>""变体 - 确保您的头文件位于该路径的某个位置。
  • 可能发现您需要使用add.h(全部小写)。
  • 你通常不应该在头文件中包含代码(你应该将它放在一个单独的C文件中,只需使用头文件列出声明(或者你的案例中的原型)。
  • 如果那是你正在使用的Turbo C(可能是clrscrgetch),那么就没有理由不升级到更现代的环境。

答案 1 :(得分:0)

您可能只需要在编译行中添加-I.标志。

答案 2 :(得分:0)

Add.h不在编译器的include路径中。

顺便说一下,iostream.h已被弃用,您应该包含iostream。此外,cout位于std命名空间中,因此您需要在.cpp文件中使用using namespace std;,或者使用std::cout代替cout。< / p>