1、头文件路径配置

可以通过VScode的快速访问窗口,选择“显示并运行命令”,选择“C/C++:编辑配置”(最近没有使用过的话,就输入该名字来选择),如图:
在这里插入图片描述
选择后,会显示如图:
在这里插入图片描述
此时,会生成c_cpp_properties.json文件,在.vscode文件夹下(此文件夹也是自动生成的)
在这里插入图片描述
在c_cpp_properties.json中配置相应的路径就行,根据我的gcc安装路径,DeepSeek给我配置的内容如下(仅供参考):

{
    "configurations": [
        {
            "name": "Win32",
            "includePath": [
                "${workspaceFolder}/",
                // 添加 MinGW 的 include 目录
                "C:/mingw64/include/",
                // 有时标准库头文件在子目录下,可以一并加上
                "C:/mingw64/x86_64-w64-mingw32/include/"
            ],
            "defines": [
                "_DEBUG",
                "UNICODE",
                "_UNICODE"
            ],
            // 关键:设置你的编译器绝对路径
            "compilerPath": "C:/mingw64/bin/gcc.exe",
            "cStandard": "c11",
            "cppStandard": "c++11",
            "intelliSenseMode": "windows-gcc-x64"
        }
    ],
    "version": 4
}

配置完成后,就能识别到标准头文件了。
注:上面json文件内容DeepSeek配置内容为c17, c++17,我改为了c11, c++11。

2、运行C语言代码

步骤见下图
在这里插入图片描述
生成的tasks.json已经是可以用的,后面运行C语言代码时,可以直接点这个三角形,然后选择“运行C/C++文件”就能编译和运行程序了;在VScode下方终端就能看到程序的输出了,我的测试代码输出结果如下:
在这里插入图片描述

3、输出中文乱码问题

在VScode终端上,如果输出有中文,会出现乱码(由于程序编码与终端编码不同所导致的),我的解决方案是:让编译器将我的代码编译成与终端一致的编码,输出中文时,就不会出现乱码了。只需在tasks.json文件中添加"-fexec-charset=GBK" 的内容,添加位置如下图:
在这里插入图片描述
修改后的tasks.json文件

{
    "tasks": [
        {
            "type": "cppbuild",
            "label": "C/C++: gcc.exe 生成活动文件",
            "command": "C:/mingw64/bin/gcc.exe",
            "args": [
                "-fdiagnostics-color=always",
                "-g",
                "-fexec-charset=GBK", //让编译器生成GBK的执行文件
                "${file}",
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe"
            ],
            "options": {
                "cwd": "C:/mingw64/bin"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "detail": "调试器生成的任务。"
        }
    ],
    "version": "2.0.0"
}

就算输出代码里有中文,运行代码后,就不会出现乱码了。
在这里插入图片描述

Logo

欢迎加入DeepSeek 技术社区。在这里,你可以找到志同道合的朋友,共同探索AI技术的奥秘。

更多推荐