Microsoft Visual Studio在使用尖括号时无法解析#include ,但在使用引号时可以解析。

10 浏览
0 Comments

Microsoft Visual Studio在使用尖括号时无法解析#include ,但在使用引号时可以解析。

我正在尝试将一些.h和.c文件添加到一个C++项目中。然而,库调用头文件时使用的是<>而不是\"\"。而且微软的Visual Studio 2015告诉我它无法打开头文件。当改为\"\"时,它可以打开文件。我不想遍历100个文件并将<>改为\"\"。是否有解决这个问题的方法?

0
0 Comments

在使用#include语句包含头文件时,使用<>和""的区别很重要。使用<>时,编译器仅在标准库中搜索头文件;而使用""时,编译器会在项目目录中搜索头文件。

假设file.h是由你创建并存在于项目目录中的头文件,只有在使用#include "file.h"时,编译器才能找到这个头文件。

所以,如果出现了(Microsoft Visual Studio doesn't resolve #include but it does when used quotes)这个问题,很可能是因为你使用了#include 这样的语法,而不是#include "file.h"。解决方法是将#include 改为#include "file.h"。

这样做可以确保编译器能够正确地在项目目录中找到并解析头文件,避免了使用标准库路径进行搜索时可能出现的问题。

0
0 Comments

当使用include引用头文件时," "< >之间的区别如下:

1. " ":引用非标准库的头文件时,编译器首先在程序源文件所在的目录中搜索。如果找不到,它会去系统默认目录中搜索,通常用于引用用户定义的头文件。

2. < >:只在系统默认目录或尖括号中的路径中搜索。通常用于引用标准库提供的头文件。

总结一下,标准库提供的头文件可以使用" "< >,但我们习惯使用< >,而用户自定义的头文件只能使用" "

然而,你可以在属性->VC++目录->包含目录中添加file.h所在的目录路径。

一般来说,自己编写的头文件使用" ",而第三方库或系统库的头文件使用< >

解决方法:

1. 确保file.h文件的路径正确且存在。

2. 检查引用file.h的代码中是否使用了正确的引用方式,即< >" "

3. 在Properties->VC++ Directories->Include Directories中添加file.h所在的目录路径。

希望以上内容能够帮助你解决Microsoft Visual Studio doesn't resolve #include <file.h> but it does when used quotes的问题。

0