扬中营销网站建设百度站内搜索代码
【编译器】VSCODE编译C语言
文章目录
- @[TOC](文章目录)
- 前言
- 一、下载配置
- 二、代码
- 1.main.c
- 2.lanuch
- 3.task
- 三、编译运行——方法一:编译器运行
- 1.编译:终端-运行生成任务(ctrl+shift+B)
- 2.运行:运行-启动调试(F5)
- 四、编译运行——方法二:指令
- 1.生成exe
- 2.运行exe
- 五、多文件调试
- 1.main.c
- 2.test1.c
- 3.test1.h
- 4.launch.json
- 5.task.json
- 六、参考资料
- 总结
文章目录
- @[TOC](文章目录)
- 前言
- 一、下载配置
- 二、代码
- 1.main.c
- 2.lanuch
- 3.task
- 三、编译运行——方法一:编译器运行
- 1.编译:终端-运行生成任务(ctrl+shift+B)
- 2.运行:运行-启动调试(F5)
- 四、编译运行——方法二:指令
- 1.生成exe
- 2.运行exe
- 五、多文件调试
- 1.main.c
- 2.test1.c
- 3.test1.h
- 4.launch.json
- 5.task.json
- 六、参考资料
- 总结
前言
使用工具:
1.ARM仿真器/J-OBV2仿真器
提示:以下是本篇文章正文内容,下面案例可供参考
一、下载配置
Release of 14.2.0-rt_v12-rev0
网络上很多了,可以参考引用文章配置
二、代码
1.main.c
#include <stdio.h> //io头文件用于调用 printf函数
#include <stdlib.h> //lib头文件用于调用system函数//主函数
int main()
{printf("hello world\n"); //打印hello world \n为换行符system("pause"); //暂停运行,否则直接运行完程序会直接关闭窗口(vscode需要,其他编译器看情况)
}
2.lanuch
{"version": "0.2.0","configurations": [{"name": "C/C++ Runner: Debug Session","type": "cppdbg","request": "launch","args": [],"stopAtEntry": false,"externalConsole": true,"cwd": "${workspaceFolder}","program": "${workspaceFolder}\\${fileBasenameNoExtension}.exe","MIMode": "gdb","miDebuggerPath": "gdb","setupCommands": [{"description": "Enable pretty-printing for gdb","text": "-enable-pretty-printing","ignoreFailures": true}]}]
}
3.task
单文件不需要task
三、编译运行——方法一:编译器运行
1.编译:终端-运行生成任务(ctrl+shift+B)
2.运行:运行-启动调试(F5)
四、编译运行——方法二:指令
1.生成exe
gcc test.c -o test
2.运行exe
./test
五、多文件调试
1.main.c
#include <stdio.h>
#include "test1.h"
#include <stdlib.h>
int main(void)
{printf("hello world\r\n");test();//此函数在test1.c中实现,在test1.h中声明system("pause");return 0;
}
2.test1.c
#include "test1.h"
#include <stdio.h>void test(void)
{printf("this is test\r\n");}
3.test1.h
void test(void);
4.launch.json
{"version": "0.2.0","configurations": [{"name": "C/C++ Runner: Debug Session","type": "cppdbg","request": "launch","args": [],"stopAtEntry": false,"externalConsole": true,"cwd": "${workspaceFolder}","program": "${workspaceFolder}\\${workspaceRootFolderName}.exe","MIMode": "gdb",//"miDebuggerPath": "C:/TDM-GCC-64/bin/gcc.exe","miDebuggerPath": "gdb","setupCommands": [{"description": "Enable pretty-printing for gdb","text": "-enable-pretty-printing","ignoreFailures": true}]}]
}
5.task.json
注意,这个地方我使用"${workspaceFolder}/*.c",会报错,所以改为每个文件添加
{"tasks": [{"type": "cppbuild","label": "C/C++: gcc.exe 生成活动文件","command": "C:/TDM-GCC-64/bin/gcc.exe","args": ["-fdiagnostics-color=always","-g",//"${workspaceFolder}/*.c","${workspaceFolder}\\main.c","${workspaceFolder}\\test1.c","-o","${workspaceFolder}/${workspaceRootFolderName}.exe",],"options": {"cwd": "C:/TDM-GCC-64/bin/"},"problemMatcher": ["$gcc"],"group": {"kind": "build","isDefault": true},"detail": "调试器生成的任务。"}],"version": "2.0.0"
}
六、参考资料
VScode任务配置详解(task.json与launch.json)
Windows系统中vscode的c/c++开发环境配置(三):多文件编译和调试
VSCode中的tasks.json配置为*.c后发现报错 fatal error: *.c: Invalid argument compilation terminated.
VScode搭建C/C++开发环境
使用Vscode创建一个C_Hello程序
总结
本文仅仅简单介绍了【编译器】VSCODE编译C语言,评论区欢迎讨论。