C++ 无法打开源文件
Posted
技术标签:
【中文标题】C++ 无法打开源文件【英文标题】:C++ cannot open source file 【发布时间】:2017-03-08 19:00:20 【问题描述】:在 C++ 和 Visual Studio 2017 中,
我将一些头文件复制到我的项目文件夹中,然后将它们添加到 C++ 中的“解决方案资源管理器”下。现在当我写
#include "name.h"
它在包含下打印一个错误,并说“无法打开源文件”。
为什么,我可以做些什么来解决它?
我才刚下载VS,第一次学c++。
【问题讨论】:
在您的项目属性中验证您的“其他包含目录” 【参考方案1】:如果您使用的是 Visual Studio,请右键单击项目,然后单击属性,在配置属性下单击 C\C++,然后将目录添加到附加包含目录部分下的头文件中。
【讨论】:
【参考方案2】:这里有更多关于如何处理这个问题的信息:Where does Visual Studio look for C++ header files?
对我来说,我遵循 xflowXen 的回答,然后在“包含目录”中输入我的头文件所在的特定路径名,后跟分号,例如: C:\用户\名称\源\repos\p2-A\p2-A; 然后应用更改,问题就消失了。
【讨论】:
【参考方案3】:对于那些还在摸不着头脑的人,你不是“应该”#include 你自己的带有三角引号()的头文件,你应该使用“引号”。这是一个常见的错误。
【讨论】:
【参考方案4】:Visual Studio(或者更确切地说是编译器)需要知道在哪里查找包含的文件。检查您的 VS 项目中的包含路径。
【讨论】:
【参考方案5】:#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
using namespace std;
int divide(int num, int den)
if(den==0)
return -1;
if((num%den)==0)
return 1;
else
return 0;
int divide(int a)
int j = a/2, flag = 1, i;
for(i=2; (i<=j) && (flag); i++)
if(a%i == 0)
flag = 0;
return flag;
void main()
clrscr();
int choice, res, a, b;
do
cout<<"1.Check for divisibility\n";
cout<<"2.Check for Prime\n";
cout<<"3.Exit\n";
cout<<"Enter your choice(1-3): ";
cin>>choice; cout<<"\n";
switch(choice)
case 1:
cout<<"Enter numerator and denominator: ";
cin>>a>>b;
res = divide(a, b);
if(res == -1)
cout<<"Divide by zero error..!!\n"; break;
cout<<((res) ? "It is" : "It is not")<<"\n";
break;
case 2:
cout<<"Enter the number: ";
cin>>a;
res = 0;
res = divide(a);
cout<<((res) ? "It is" : "It is not")<<"\n";
break;
case 3:
cout<<"Exiting...press any key...";
getch();
exit(1);
default:
cout<<"Wrong choice..!!";
cout<<"\n";
while(choice>0 && choice<=3);
getch();
【讨论】:
有人能解释一下这段代码与这个问题有什么关系吗? 不知道这段代码在做什么/应该做什么。你应该添加一些解释以上是关于C++ 无法打开源文件的主要内容,如果未能解决你的问题,请参考以下文章
在vs中运行C++程序出现错误无法打开包括文件“iostream.h”
Visual Studio C++ Link1104 无法打开文件 MSVCURTD.lib
visual c++,链接:致命错误 LNK1104:无法打开文件
Visual Studio 2015 c++ 无法打开包含文件或源文件
为啥在 Visual Studio 中编译 C++ 项目时出现致命错误“LNK1104:无法打开文件 'cryptlib.lib'?