VScode 引入头文件配置

本文是关于Vscode,gcc编译器下的引入头文件配置。
先说情况:
在这里插入图片描述
把其它源文件以及头文件和main分开文件夹
但编译器不知道我们的头文件路径,所以我们要告诉编译器文件路径
打开c_cpp_properties.json文件(如果找不到的,可以百度搜一下)

{
    "configurations": [
        {
            "name": "Win32",
            "includePath": [
                "${workspaceFolder}/**",
                "${workspaceFolder}/include"  //在此插入"头文件路径",
            ],
            "defines": [
                "_DEBUG",
                "UNICODE",
                "_UNICODE"
            ],
            "windowsSdkVersion": "10.0.22000.0",
            "compilerPath": "E:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.34.31933/bin/Hostx64/x64/cl.exe",
            "cStandard": "c17",
            "cppStandard": "c++17",
            "intelliSenseMode": "windows-msvc-x64"
        }
    ],
    "version": 4
}

${workspaceFolder},表示根目录名称。我这用的是相对路径,方便转移文件,你也可以用绝对路径。
配置完这里,它就知道头文件路径在那里了
接下来我们要把他们连接起来
打开tasks.json文件

{
    "tasks": [
        {
            "type": "cppbuild",
            "label": "C/C++: gcc.exe 生成活动文件",
            "command": "C:\\mingw64\\bin\\gcc.exe",
            "args": [
                "-fdiagnostics-color=always",
                "-g",
                "${file}",
                "${workspaceFolder}\\include\\hello.c",//这里添加源文件路径让它链接起来一起编译
                 "-o",
                "${fileDirname}\\exe\\${fileBasenameNoExtension}.exe",
                "-I",
                "${workspaceFolder}\\include",  //在此插入:"-I","源文件路径",
                
                "-fexec-charset=GBK",
            ],
            "options": {
                "cwd": "${fileDirname}"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "detail": "调试器生成的任务。"
        }
    ],
    "version": "2.0.0"
}

还有,设置.exe的路径
打开launch.json

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "gcc.exe - 生成和调试活动文件",
            "type": "cppdbg",
            "request": "launch",
            "program": "${fileDirname}\\exe\\${fileBasenameNoExtension}.exe",//这里是设置.exe的执行路径
            "args": [],
            "stopAtEntry": false,
            "cwd": "${fileDirname}",
            "environment": [],
            "externalConsole": true,//true为打开外控制平台
            "MIMode": "gdb",
            "miDebuggerPath": "C:\\mingw64\\bin\\gdb.exe",
            "setupCommands": [
                {
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                },
                {
                    "description": "将反汇编风格设置为 Intel",
                    "text": "-gdb-set disassembly-flavor intel",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "C/C++: gcc.exe 生成活动文件"
        }
    ]
}

测试代码
main.c

#include <stdio.h>
#include <stdlib.h>
#include "hello.h"


int main()
{
    Hello();
    Hello2();
    return 0;
}

hello.c

#include<stdio.h>
#include <stdlib.h>

void Hello(void)
{
    printf("Hello World!\n");
    printf("!\n");
       // 防止运行后自动退出,需头文件stdlib.h
}

void Hello2(void)
{
    printf("Hello World!2\n");
    printf("!\n");system("pause"); 
}

hello.h

#ifndef _HELLO_H_
#define _HELLO_H_
 
void Hello(void);
void Hello2(void);

#endif

在这里插入图片描述
在这里插入图片描述

  • 6
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
回答: 当在VSCode引入头文件时出现错误,可能是由于文件路径配置不正确导致的。首先,需要确保头文件的路径正确,可以使用正确的相对路径或绝对路径来引入头文件。其次,还需要检查编译器的路径是否正确配置。在使用第三方库时,特别需要注意头文件的包含路径。另外,如果出现"files not found"错误,可能是因为文件没有找到。最后,如果在使用VSCode编写C++程序时,引入头文件后出现undefined reference问题,可能是由于配置错误导致的。可以尝试检查文件目录是否正确,并确保头文件中的函数声明与对应的C++文件中的方法一致。\[1\]\[2\]\[3\] #### 引用[.reference_title] - *1* *3* [【解决】VSCode编写C++自定义头文件undefined reference异常问题](https://blog.csdn.net/qq_29750461/article/details/127972046)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [关于VScode引用头文件时一直报错的解决方法](https://blog.csdn.net/weixin_46435653/article/details/116033133)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值