揭阳网站设计制作,wordpress怎么上传文件,做招商加盟网站怎么样,个人如何做网站目录
一、简介
二、下载
1 旧版安装#xff08;8.1.0#xff09;
从 sourceforge.net 下载
2 新版安装(本次采用较新版本~~~)
从 github 下载
从 镜像站点 下载 自己编译
三、安装与配置
1. 在线安装#xff08;这里仅作参考了解#xff09;
2. 离线安装…目录
一、简介
二、下载
1 旧版安装8.1.0
从 sourceforge.net 下载
2 新版安装(本次采用较新版本~~~)
从 github 下载
从 镜像站点 下载 自己编译
三、安装与配置
1. 在线安装这里仅作参考了解
2. 离线安装这是本文安装的重点也是本机安装的版本~~~★★★
1 下载MinGW-w64的安装包
2 下载到指定位置后找一个地方解压记住这个路径后面配置环境变量用。
3 环境配置
4 检查是否配置成功
四、VsCode配置c语言
1. 下载c/c插件
2. 运行代码
3. 调整和优化
task.json文件
生成launch.json文件
多文件的运行和调试
多项目管理和scanf输入
五、配置C
卸载VSCode
1.直接控制面板卸载
2.删除安装插件位置为C:\Users\smxsh\.vscode
3.删除配置信息 一、简介
1. MinGW 和 MinGW-W64 区别和联系 MinGW和MinGW-W64都是用于Windows平台的轻量级GNU工具链用于开发和编译C和C程序。
MinGWMinimalist GNU for Windows是一个32位的GNU工具链它提供了一套基于GNU的开发环境包括GCC编译器和一些GNU库可以用来编译Windows下的C和C程序。但MinGW只支持32位程序的编译。
MinGW-W64是一个64位的GNU工具链是MinGW的升级版原本它是MinGW的分支后来成为独立发展的项目它支持同时编译32位和64位程序。它包括了一系列的GNU库和工具例如GCC、Binutils、GDB等还支持一些实用工具和库如OpenMP、MPI等。
总的来说MinGW-W64可以看作是MinGW的升级版它支持更多的编译选项和更多的库可以编译出更加高效和安全的程序。
另外MinGW-W64原本是从MinGW项目fork出来的独立的项目。MinGW 早已停止更新内置的GCC最高版本为4.8.1而MinGW-W64目前仍在维护它也是GCC官网所推荐的。 关于更多 MinGW 和 MinGW-W64 相关的知识 科普MinGW MinGW-W64_mingw64_whatday的博客-CSDN博客 c - What is the difference between MinGW, MinGW-w64 and MinGW-builds? - Stack Overflow MinGW-w64官网c - What is the difference between MinGW, MinGW-w64 and MinGW-builds? - Stack Overflow GCC官网GCC, the GNU Compiler Collection - GNU Project 2. MSVCRT 和 UCRT 介绍
MSVCRT和UCRT都是用于Windows平台的C运行时库提供了基本的C函数和类型用于C程序的开发和运行。
MSVCRTMicrosoft Visual C Runtime是Microsoft Visual C早期版本使用的运行时库用于支持C程序的运行。它提供了一些常用的C函数如printf、scanf、malloc、free等。MSVCRT只能在32位Windows系统上运行对于64位系统和Windows Store应用程序不支持。
UCRTUniversal C Runtime是在Windows 10中引入的新的C运行时库用于支持C程序的运行和开发。UCRT提供了一些新的C函数同时还支持Unicode字符集和安全函数如strcpy_s、strcat_s、_itoa_s等。UCRT同时支持32位和64位系统并且可以与Windows Store应用程序一起使用。
总的来说UCRT是Microsoft为了更好地支持Windows 10和Windows Store应用程序而开发的新一代C运行时库相比于MSVCRTUCRT提供了更多的功能和更好的兼容性。但对于旧的32位Windows系统MSVCRT仍然是必需的。 二、下载
MinGW-w64 更新日志
Changelog - MinGW-w64
MinGW-w64 源码地址
Github上的sourceforge.net上的MinGW-w64 - for 32 and 64 bit Windows / mingw-w64 / [3d3956] (sourceforge.net) 找了很多教程, 基本都是从 sourceforge 上下的 8.1.0 版本8.1.0版本是2018年更新的属实有点老因此借着本次重装系统也将其更新一下~~~~ 1 旧版安装8.1.0
从 sourceforge.net 下载
在线安装
Win32 位Download mingw-w64-install.exe (MinGW-w64 - for 32 and 64 bit Windows) (sourceforge.net)
离线安装
Win32 位MinGW-w64 - for 32 and 64 bit Windows - Browse /Toolchains targetting Win32/Personal Builds/mingw-builds at SourceForge.netWin64 位MinGW-w64 - for 32 and 64 bit Windows - Browse /Toolchains targetting Win32/Personal Builds/mingw-builds at SourceForge.net 不推荐在线安装安装过程特别慢而且还可能失败 注意这里提供的二进制安装程序是旧的支持的GCC版本停留在了MinGW-W64 GCC-8.1.0 截至目前GCC最新版本为GCC-13.2 详情请参考GCC Releases - GNU Project 如果你有特定需求需要使用旧版本的你可以参考下面的文章进行安装及配置
使用VScode编写C语言程序 环境安装配置 保姆级教程_vscode安装编译器_Siobhan. 明鑫的博客-CSDN博客
2 新版安装(本次采用较新版本~~~)
从 github 下载
首先到 MinGW-w64官网-下载
往下, 找到 MinGW-builds , 点击下面的 Github 链接。
当然为了方便链接放这里了 Releases · niXman/mingw-builds-binaries · GitHub 在线安装 Releases · Vuniverse0/mingwInstaller (github.com)离线安装
13.2.0版本Releases · mmozeiko/build-gcc-mingw (github.com) 13.1.0官方GitHub版本Releases · niXman/mingw-builds-binaries (github.com) 从 镜像站点 下载
网上找到的一个MinGW-w64镜像站点Index of /mingw
最新版本更新到12.2.0 自己编译
直接编译会比较复杂这里推荐几个大神写好的MinGW-w64编译工具
niXman/mingw-builds: Scripts for building the 32 and 64-bit MinGW-W64 compilers for Windows (github.com)
mmozeiko/build-gcc-mingw: Automatic 32-bit and 64-bit Windows build of gcc, mingw-w64, gdb and make. (github.com) 怎么使用看对应的Readme介绍本文不介绍。 三、安装与配置
1. 在线安装这里仅作参考了解
这里不介绍 sourceforge.net上的在线安装它上面的GCC版本太老了~~~
这里介绍Releases · Vuniverse0/mingwInstaller (github.com)
的在线安装方式
1下载mingwInstaller.exe 2以管理员身份运行mingwInstaller.exe开始安装 3选择GCC版本 注意有好几个版本的mingwInstaller.exe不同的版本支持的GCC版本不一样我这里使用的是1.2.0版 4选择软件架构 选择32bit还是64bit看你自己的操作系统是多少位的 5选择线程模型 你开发的程序如果是运行在Windows系统上就选win32如果是运行在其他系统如 LinuxUnixMac OS等就选posix 更多信息请参考windows - mingw-w64 threads: posix vs win32 - Stack Overflow 6选择构建版本 选择构建版本这里好像只有一个rev1一般保持默认即可 7选择运行时库类型 选择运行时库类型前面简介里有介绍 8选择安装位置 可以勾选上Create shortcut on Desktop使用会方便些 9安装过程自动下载、解压、安装配置 2. 离线安装这是本文安装的重点也是本机安装的版本~~~★★★
从 GitHub或镜像站点下载编译好的安装程序包【二、下载】中提供的有地址
以 Releases · niXman/mingw-builds-binaries (github.com)为例离线安装比较简单只需下载解压即可
本此安装采用的是新版官方网址中GitHub的13.1.0的版本
1 下载MinGW-w64的安装包 根据自己的需要选择适合的安装包
32位的操作系统选择i68664位的操作系统选择x86_6413.1.0 是GCC的版本号其他版本的你需要往下找win32是开发windows系统程序的协议posix是其他系统的协议例如Linux、Unix、Mac OS更多信息参考windows - mingw-w64 threads: posix vs win32 - Stack Overflow异常处理模型seh新的仅支持64位系统sjlj稳定的64位和32位都支持 dwarf优于sjlj的仅支持32位系统更多信息参考c - What is difference between sjlj vs dwarf vs seh? - Stack Overflowmsvcrt、ucrt 运行时库类型有关介绍请参考文章简介部分rt_v11 运行时库版本rev1 构建版本 可以参考以下文章决定下载版本 WinLibs - GCCMinGW-w64 compiler for Windows 在 Visual Studio Code 中开始在 Linux 上C Downloads - MinGW-w64 最终决定下载x86_64-13.1.0-release-posix-seh-ucrt-rt_v11-rev1 版本 posix更加兼容仅POSIX线程构建其中还包括 Win32 API 线程函数 SEH 表示 64 位 x86_64 ucrt除非您的目标是旧版本的 Windows否则 UCRT 作为运行时库是更好的选择因为它是为了更好地支持最新的 Windows 版本以及提供更好的标准一致性而编写的详细参考Upgrade your code to the Universal CRT | Microsoft Learn 这里我们选择安装 2 下载到指定位置后找一个地方解压记住这个路径后面配置环境变量用。 3 环境配置
1如果你是按照【1.在线安装】的可以不用配置环境变量直接打开MinGW-W64-64bit快捷方式桌面或开始菜单然后在打开的命令行窗口中直接就可以使用gcc等命令
2如果你是按照【2.离线安装】的将解压后的目录下的bin路径手动添加到系统的PATH环境变量。这里是我们最终选择的方式因此再次介绍一下具体配置
解压后的文件大致如下图 进入mingw64下的bin文件夹复制当前路径
Win i 唤起系统设置输入高级系统设置并进入 点击环境变量选择path编辑新建粘贴路径按下三个确定 4 检查是否配置成功 winR 打开cmd 输入gcc -v 或g -v C:\Users\smxshg -v
Using built-in specs.
COLLECT_GCCg
COLLECT_LTO_WRAPPERD:/Software/c/mingw64/bin/../libexec/gcc/x86_64-w64-mingw32/13.1.0/lto-wrapper.exe
Target: x86_64-w64-mingw32
Configured with: ../../../src/gcc-13.1.0/configure --hostx86_64-w64-mingw32 --buildx86_64-w64-mingw32 --targetx86_64-w64-mingw32 --prefix/mingw64 --with-sysroot/c/buildroot/x86_64-1310-posix-seh-ucrt-rt_v11-rev1/mingw64 --enable-host-shared --disable-multilib --enable-languagesc,c,fortran,lto --enable-libstdcxx-timeyes --enable-threadsposix --enable-libgomp --enable-libatomic --enable-lto --enable-graphite --enable-checkingrelease --enable-fully-dynamic-string --enable-version-specific-runtime-libs --enable-libstdcxx-filesystem-tsyes --disable-libssp --disable-libstdcxx-pch --disable-libstdcxx-debug --enable-bootstrap --disable-rpath --disable-win32-registry --disable-nls --disable-werror --disable-symvers --with-gnu-as --with-gnu-ld --with-archnocona --with-tunecore2 --with-libiconv --with-system-zlib --with-gmp/c/buildroot/prerequisites/x86_64-w64-mingw32-static --with-mpfr/c/buildroot/prerequisites/x86_64-w64-mingw32-static --with-mpc/c/buildroot/prerequisites/x86_64-w64-mingw32-static --with-isl/c/buildroot/prerequisites/x86_64-w64-mingw32-static --with-pkgversionx86_64-posix-seh-rev1, Built by MinGW-Builds project --with-bugurlhttps://github.com/niXman/mingw-builds CFLAGS-O2 -pipe -fno-ident -I/c/buildroot/x86_64-1310-posix-seh-ucrt-rt_v11-rev1/mingw64/opt/include -I/c/buildroot/prerequisites/x86_64-zlib-static/include -I/c/buildroot/prerequisites/x86_64-w64-mingw32-static/include CXXFLAGS-O2 -pipe -fno-ident -I/c/buildroot/x86_64-1310-posix-seh-ucrt-rt_v11-rev1/mingw64/opt/include -I/c/buildroot/prerequisites/x86_64-zlib-static/include -I/c/buildroot/prerequisites/x86_64-w64-mingw32-static/include CPPFLAGS -I/c/buildroot/x86_64-1310-posix-seh-ucrt-rt_v11-rev1/mingw64/opt/include -I/c/buildroot/prerequisites/x86_64-zlib-static/include -I/c/buildroot/prerequisites/x86_64-w64-mingw32-static/include LDFLAGS-pipe -fno-ident -L/c/buildroot/x86_64-1310-posix-seh-ucrt-rt_v11-rev1/mingw64/opt/lib -L/c/buildroot/prerequisites/x86_64-zlib-static/lib -L/c/buildroot/prerequisites/x86_64-w64-mingw32-static/lib LD_FOR_TARGET/c/buildroot/x86_64-1310-posix-seh-ucrt-rt_v11-rev1/mingw64/bin/ld.exe --with-boot-ldflags -Wl,--disable-dynamicbase -static-libstdc -static-libgcc
Thread model: posix
Supported LTO compression algorithms: zlib
gcc version 13.1.0 (x86_64-posix-seh-rev1, Built by MinGW-Builds project)C:\Users\smxsh
此时配置成功
where gcc # 查看gcc位置
gcc --version # 查看gcc版本
C:\Users\smxshwhere gcc
D:\Software\c\mingw64\bin\gcc.exe
C:\Users\smxshgcc --version
gcc (x86_64-posix-seh-rev1, Built by MinGW-Builds project) 13.1.0
Copyright (C) 2023 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 四、VsCode配置c语言
1. 下载c/c插件 打开VScode安装插件 C/C 等待安装完毕后重启VScode 2. 运行代码 1.在code下新建文件夹C_C用来放c/c的项目 2.使用vscode编辑器打开此文件夹 3.在C_C文件夹下创建test_helloC文件夹——创建test.c文件 复制helloWorld代码进去
#include stdio.h
#include stdlib.h
int main()
{printf(Hello World!\n);printf(你好世界\n);system(pause); // 防止运行后自动退出需头文件stdlib.hreturn 0;
} 4.VScode菜单栏点击运行启动调试稍等程序运行输出结果在下方终端上方调试面板点击最右边的 橙色方框 停止程序运行 此时发现左侧会自动生成.vscode文件夹和test.exe。终端输出我们想要的结果。接下来进行优化配置~~~
3. 调整和优化 请根据自己的需要进行优化 代码运行后 .vscode 文件夹会自动生成在你的源文件目录下.vscode 文件夹下的 task.json task.json文件
将生成的task.json文件修改如下
// ${file},*.c,//当前文件夹所有的.c文件都编译
此时整个task.json文件为
{tasks: [{type: cppbuild,label: C/C: gcc.exe 生成活动文件,command: D:\\Software\\c\\mingw64\\bin\\gcc.exe,args: [-fdiagnostics-coloralways,-g,// ${file},*.c,//当前文件夹所有的.c文件都编译-o,${fileDirname}\\${fileBasenameNoExtension}.exe//生成的可执行程序名称],options: {cwd: ${fileDirname}},problemMatcher: [$gcc],group: {kind: build,isDefault: true},detail: 调试器生成的任务。}],version: 2.0.0
} 【断点调试】 当前调试只是单个文件为了实现多个文件断点调试则配置launch.json文件。 生成launch.json文件 此时在.vscode 文件夹下自动生成 launch.json 文件选择【添加配置】 添加gdb启动配置
此时更改两个配置首先找到gdb.exe的路径复制出来 然后将launch.json文件中的
miDebuggerPath: /path/to/gdb, 更改为复制的路径 program 更改为 task.json 文件中的 ${fileDirname}\\${fileBasenameNoExtension}.exe 重要的是修改program和miDebuggerPath
具体如下
{// 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。// 欲了解更多信息请访问: https://go.microsoft.com/fwlink/?linkid830387version: 0.2.0,configurations: [{name: (gdb) 启动,type: cppdbg,request: launch,program: ${fileDirname}\\${fileBasenameNoExtension}.exe,//需要调试的可执行程序args: [],stopAtEntry: false,cwd: ${fileDirname},environment: [],externalConsole: false,MIMode: gdb,miDebuggerPath: D:\\Software\\c\\mingw64\\bin\\gdb.exe,//gdb的位置setupCommands: [{description: 为 gdb 启用整齐打印,text: -enable-pretty-printing,ignoreFailures: true},{description: 将反汇编风格设置为 Intel,text: -gdb-set disassembly-flavor intel,ignoreFailures: true}]}]
} 多文件的运行和调试
在test_helloC 文件夹下新建max.h文件放一个函数声明新建max.c文件放一个函数做实现在test.c中使用函数
max.h int Max(int a, int b);
max.c int Max(int a, int b)
{return a b ? a : b;
} test.c #include stdio.h
#include stdlib.h
#include max.h // 引用自己的头文件int main()
{int a 10;int b 20;int c Max(a, b);printf(%d\n, c);printf(Hello World!\n);printf(你好世界\n);system(pause); // 防止运行后自动退出需头文件stdlib.hreturn 0;
} 断点调试 多项目管理和scanf输入
在C_C文件夹——新建test_scanf文件——新建test2.c文件
#include stdio.hint main()
{int a;int b;scanf(%d%d, a, b);printf(%d*%d%d\n, a, b, a * b);return 0;
} 点击运行c/c文件在终端手动输入ab的值 五、配置C
1、新建文件夹C 打开vscode——文件——将文件夹添加到工作区 新建C文件夹 新建test.cpp文件 #include iostream
using namespace std;
int main()
{cout hello C! endl;return 0;
}
注意此时生成为g.exe 运行结果
当前同样只针对单个文件若需要调试运行多个c文件同样需要配置.vscode下的json文件~~~
后续再补充更新
最后说明一下卸载vscode的方法
卸载VSCode
1.直接控制面板卸载
2.删除安装插件位置为C:\Users\smxsh\.vscode 3.删除配置信息 位置为C:\Users\smxsh\AppData\Roaming\Code文件夹
直接将该文件夹删除才可彻底删干净
注意appdata文件夹为隐藏文件夹显示方式如下 参考json文件配置 在 Visual Studio Code 中开始在 Linux 上C 使用VScode编写C语言程序 环境安装配置 保姆级教程_vscode安装编译器_Siobhan. 明鑫的博客-CSDN博客 VSCode 配置 C 环境_vscode如何只运行不调试_冰光之梦的博客-CSDN博客