C/C++编程工具及实用小软件推荐_c++软件-程序员宅基地

技术标签: C/C++  QT Creator  技术分享系列  Visual Studio  编程工具  VS Code  

目录

1、概述

2、IDE开发工具介绍

2.1、Visual Studio

2.2、QT Creator

3、代码查看与编辑工具

3.1、Visual Studio Code

3.2、Source Insight

4、实用小软件工具推荐

4.1、Notepad++

4.2、Everything

5、最后


        经常有C/C++初学者会问,有哪些常用的IDE开发编程工具?有哪些高效率的小软件可以使用?今天就来给大家介绍这方面的内容,以供参考。本文的内容适用于C/C++的初学者或者刚参加工作的朋友。(与文章配套的C/C++学习路线视频教程已出,具体信息见本文的评论区!!!

VC++常用功能开发汇总(专栏文章列表,欢迎订阅,持续更新...)icon-default.png?t=N7T8https://blog.csdn.net/chenlycly/article/details/124272585C++软件异常排查从入门到精通系列教程(专栏文章列表,欢迎订阅,持续更新...)icon-default.png?t=N7T8https://blog.csdn.net/chenlycly/article/details/125529931C++软件分析工具从入门到精通案例集锦(专栏文章正在更新中...)icon-default.png?t=N7T8https://blog.csdn.net/chenlycly/article/details/131405795C/C++基础与进阶(专栏文章,持续更新中...)icon-default.png?t=N7T8https://blog.csdn.net/chenlycly/category_11931267.html

1、概述

       常用的C/C++ IDE开发工具有微软的Visual Studio和QT公司的QT Creator。Visual Studio主要用于开发编译Windows平台的C/C++程序,基本上所有的Windows UI客户端程序都是用Visual Studio开发的,比如腾讯会议、QQ、PC版微信、阿里钉钉、字节飞书等

       Linux平台上C/C++服务器程序也可以使用Visual Studio去编辑,编译时拿到Linux系统中用gcc编译即可。QT Creator主要用于基于QT界面库的应用程序的开发,QT界面库是跨平台的,使用QT的程序既可以运行在Windows平台上,也可以运行在Linux平台上。QT Creator既可以安装到Windows系统上,也可以安装到Linux系统中。

目前C/C++程序主要运行在两个平台上,一个是Widnows平台,一个是Linux平台,所以讨论到C/C++开发时都会提到这两个平台。Linux平台细分的话,还分嵌入式Linux平台和服务器Linux平台。

有人可能会说,还有移动平台iOS和Android,这两个平台不用C/C++语言开发。iOS平台主要使用Swift或Object-C语言开发APP,Android平台则使用Java语言开发APP。

       除了Visual Studio和QT Creator之外,还可以使用其他的代码编辑器去编辑代码,比如微软的Visual Studio Code和Source Dynamics公司的Source Insight。这两个工具都比较轻便,可以快速启动,查看、编辑代码都比较方便。

       除了IDE开发工具与代码编辑查看工具之外,这里还给大家推荐Notepad++Everything两个很好用的日常小工具。Notepad++类似于Windows系统的记事本,但功能比记事本强大很多,可以查看编写文件,也可以查看编辑代码。

       Everything是个文件搜索工具,可以快速搜索整个系统中的文件,搜索速度比Windows系统自带的搜索要快很多,搜索文件时非常方便好用。


       在这里,给大家重点推荐一下我的几个热门畅销专栏

专栏1:(该精品技术专栏的订阅量已达到430多个,专栏中包含大量项目实战分析案例,有很强的实战参考价值,广受好评!专栏文章持续更新中,预计更新到200篇以上!)

C++软件异常排查从入门到精通系列教程(专栏文章列表,欢迎订阅,持续更新...)icon-default.png?t=N7T8https://blog.csdn.net/chenlycly/article/details/125529931

本专栏根据多年C++软件异常排查的项目实践,系统地总结了引发C++软件异常的常见原因以及排查C++软件异常的常用思路与方法,详细讲述了C++软件的调试方法与手段,以图文并茂的方式给出具体的项目问题实战分析实例(很有实战参考价值),带领大家逐步掌握C++软件调试与异常排查的相关技术,适合基础进阶和想做技术提升的相关C++开发人员!

考察一个开发人员的水平,一是看其编码及设计能力,二是要看其软件调试能力!所以软件调试能力(排查软件异常的能力)很重要,必须重视起来!能解决一般人解决不了的问题,既能提升个人能力及价值,也能体现对团队及公司的贡献!

专栏中的文章都是通过项目实战总结出来的,包含大量项目问题实战分析案例,有很强的实战参考价值!专栏文章还在持续更新中,预计文章篇数能更新到200篇以上!

专栏2: 

C/C++基础与进阶(专栏文章,持续更新中...)icon-default.png?t=N7T8https://blog.csdn.net/chenlycly/category_11931267.html

以多年的开发实战经验为基础,总结并讲解一些的C/C++基础与进阶内容,以图文并茂的方式对C++相关知识点进行详细地展开与剖析!专栏涉及了C/C++开发领域多个方面的内容,同时给出C/C++及网络方面的常见笔试面试题,并详细讲述Visual Studio常用调试手段与技巧!

专栏3: 

VC++常用功能开发汇总icon-default.png?t=N7T8https://blog.csdn.net/chenlycly/article/details/124272585

专栏将10多年C++开发实践中常用的功能,以高质量的代码展现出来,并对相关功能的实现细节进行了详细的说明。这些常用的代码,其质量与稳定性是有保证的,可以直接拿过去使用,可以有效地解决C++软件开发过程中遇到的问题。


2、IDE开发工具介绍

       常用的C/C++ IDE工具主要有微软的Visual Studio和QT公司的QT Creator。

大家可能还用过Dev C++这个开发环境,但这个工具原厂商已经停止维护,目前还有几个国内维护的版本,但该工具整体功能有限,并且对Win10、Win11等新版本Windows系统的兼容性不太好,所以不推荐大家使用。

2.1、Visual Studio

       微软的Visual Studio是Windows平台上最强大的IDE软件开发工具,支持开发C/C++、C#、F#、JavaScript、Python、TypeScript、Visual Basic、.NET等语言的应用程序开发。这里我们主要看C/C++应用程序的开发。

       Visual Studio有强大的代码编辑与调试功能,发展到今天已经经理了多个版本的迭代。从经典的Visual Studio 6.0,到Visual Studio 2003、Visual Studio 2008、Visual Studio 2010、Visual Studio 2012、Visual Studio 2015,再到近几年的Visual Studio 2017、Visual Studio 2019、Visual Studio 2022。

       其中,Visual Studio 2010是比较经典的版本,这个版本比较稳定且使用流畅,很多公司都在用这个版本,但该版本距今已经有10多年了,很多开源的C/C++代码已经不再支持。比如著名的WebRTC库最低只支持到Visual Studio 2017,已经不再支持Visual Studio 2010了。很多公司为了使用新版本的开源库,为保持库与库之间开发工具的统一,已经将Visual Studio的版本升级到2017及以上的版本了。

       新版本有新版本的优势,新版本引入了很多新功能,比如Visual Studio 2019的某个版本开始就引入了Google的内存检测利器Address Sanitizer,这个工具非常强大,可以检测最让C/C++程序员头疼的内存异常问题。

       Linux有专用的内存检测工具Valgrind和Address Sanitizer,但Windows只有一些老旧的工具,对新版本的Visual Studio已经不再支持了,Visual Studio 2019引入了内存检测利器Address Sanitizer是个很大的利好消息。

       推荐大家使用Visual Studio 2019或者以上的版本,Visual Studio 2017不太好用,在使用过程中会时不时的卡顿,在调试大型程序时速度也比较慢,而Visual Studio 2019要好很多。

       此外,Visual Studio 2017之前的版本都是收费的,当然大家用的基本都是破解版的,从Visual Studio 2017开始,开始提供免费的社区版本(Commuity Version),我们使用社区版本就可以了,完全可以满足需求的。下载安装都比较方便,直接搜索,到官网下载社区版安装就行了。

       基本上所有的Windows UI客户端程序都是用Visual Studio开发编译的。使用C/C++开发的常用客户端程序有腾讯会议、QQ、PC版微信、阿里钉钉、字节飞书等,他们都是用Visual Studio开发编译的。

虽然Visual Studio有些庞大复杂,但还是推荐大家多使用一下,使用一些常用的功能,熟悉一些调试的技巧。大家以后工作了可能会用到这个IDE,大家正好可以通过学习提前把这个工具熟悉起来。

2.2、QT Creator

       Qt Creator是Qt为应用程序开发人员提供的一个跨平台集成开发环境,可运行于Windows、Linux和MacOS操作系统。使用Qt Creator开发的应用程序可以部署到电脑、嵌入式、移动操作系统或Web浏览器。

在功能方面,Qt Creator 包括项目生成向导、高级的 C++ 代码编辑器、浏览文件及类的工具、集成了 Qt Designer、图形化的 GDB 调试前端,集成 qmake 构建工具等。开发基于QT界面库的C/C++应用程序时,我们一般都用QT Creator来开发。因为QT界面库是跨平台的,所以如果要开发一套既支持Windows系统有支持Linux系统的桌面应用软件,一般会选择使用QT界面库,会使用QT Creator开发环境去开发。

       Linux主要是用作服务器系统的,为什么还要支持Linux系统呢?因为现在国家正在推行国产化进程,实现国产化替代,会使用到麒麟、UOS和深度DeepIn的国产化桌面操作系统,这些系统都是基于开源的Linux系统开发而来的。而很多软件是需要支持国产化操作系统,所以支持Linux的应用程序也越来越多了。

       比如视频监控头部厂商海康威视和大华的客户端软件,为了既支持Windows也支持Linux,均选择了QT进行开发。随着国产化进程的持续推进,国产化操作系统的逐步普及,支持函国产化系统的软件会越来越多,QT变得越来越受欢迎,QT开发技术开始变得火热起来。各大招聘网站上关于QT开发的岗位也变得越来越多了。

3、代码查看与编辑工具

3.1、Visual Studio Code

       Visual Studio Code,简称VS Code是Microsoft在2015年4月30日Build开发者大会上正式宣布一个运行于 Mac OS X、Windows和 Linux 之上的,针对于编写现代Web和云应用的跨平台源代码编辑器。它具有对JavaScript,TypeScript和Node.js的内置支持,并具有丰富的其他语言(例如C++,C#,Java,Python,PHP,Go)和运行时(例如.NET和Unity)扩展的生态系统。

       该编辑器也集成了所有一款现代编辑器所应该具备的特性,包括语法高亮(syntax hight lighting),可定制的热键绑定(customizable keyboard bindings),括号匹配(bracket matching)以及代码片段收集(snippets)。还会拥有对 Git 的开箱即用的支持。

       VS Code将代码编辑器的简单性与开发人员对其核心 edit - build - debug 周期所需的功能结合在一起。它提供了全面的代码编辑、导航和理解支持、以及轻量级调试,丰富的可扩展性模型以及与现有工具的轻量级集成。此外,微软在大力推广VS Code,其更新的频率很快,每月更新一次,其中包含新功能和错误修复。

        严格意义上讲,VS Code只是个代码查看和编辑工具,本身不提供编译器,没法对代码进行编译。如果要支持编译功能,需要安装相关的插件。

3.2、Source Insight

       Source Insight是一个面向项目开发的轻量级程序编辑器和代码浏览器,它拥有内置的对C/C++、C#和Java等程序的分析。能分析源代码并在工作的同时动态维护它自己的符号数据库,并自动显示有用的上下文信息。Source Insight提供了最快速的对源代码的导航和任何程序编辑器的源信息。 Source Insight提供了快速和革新的访问源代码和源信息的能力。

       Source Insight是个小巧轻便的工具,可以快速启动,实用过程中占用很少的资源(CPU和内存资源),可以快速地浏览和编辑代码,和大型臃肿的IDE软件相比,这些是很大的优势。作为一个编辑器,是没有编译代码的功能的。

       在查看学习大型开源库代码时,强烈建议大家使用Source Insight,比如大型开源项目WebRtc和Chromium。这些大型源代码的大小就占到了数个GB以上,且很多这种大型的开源库都是通过交叉编译工具编译的,并没有提供Visual Studio工程文件,不好使用Visual Studio去查看源代码。这时正好可以使用Source Insight,只要在Source Insight创建一个工程,将开源代码的根目录指定到工程中即可。

       具体如何使用Source Insight工具,如何创建Source Insight工程,可以查看之前写的一篇文章:
使用Source Insight查看编辑源代码icon-default.png?t=N7T8https://blog.csdn.net/chenlycly/article/details/124347857

4、实用小软件工具推荐

4.1、Notepad++

       Notepad++是程序员必备的文本编辑器,该软件软件功能非常强大,界面简洁明晰、操作方便快捷,设计得很人性化。Notepad++支持C、C++、Java、C#、XML、HTML、PHP、JS等27种编程语言。该工具比Windows系统自带的记事本(Notepad.exe)要强大太多,可完美地取代Windows系统的记事本。

       可以使用Notepad++查看源代码,它支持语法高亮显示。Notepad++支持多标签页,可以同时打开多个文件。我们经常使用Notepad++查看日志文件,支持在文件中搜索,可以对匹配到的关键字的次数进行计数,并将搜到的记录显示出来,可以切换查看,这对查看软件运行日志非常方便。
还可以使用Notepad++记录文本内容,该工具启动快使用便捷,这是其一大优势。这是我们日常开发工作中用的最多的软件之一。

4.2、Everything

       Everything是voidtools开发的一款文件搜索工具,它体积小巧,启动迅速,界面简洁易用。搜索文件时快速建立索引,快速搜索,同时占用极低的系统资源,还能实时跟踪文件变化。其搜索速度比Windows自带的搜索要快得多。

       使用该工具在搜索磁盘上的文件或文档时,不是一般的好用,搜索速度真的非常快,强烈推荐大家使用一下。    

5、最后

        以上大概地介绍了一些C/C++常用开发工具和两个日常使用的小工具,这些内容主要适用于初学者和刚参加工作的人,对于有工作经验的人,这些肯定不在话下的。    
    

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/chenlycly/article/details/126734902

智能推荐

软件测试流程包括哪些内容?测试方法有哪些?_测试过程管理中包含哪些过程-程序员宅基地

文章浏览阅读2.9k次,点赞8次,收藏14次。测试主要做什么?这完全都体现在测试流程中,同时测试流程是面试问题中出现频率最高的,这不仅是因为测试流程很重要,而是在面试过程中这短短的半小时到一个小时的时间,通过测试流程就可以判断出应聘者是否合适,故在测试流程中包含了测试工作的核心内容,例如需求分析,测试用例的设计,测试执行,缺陷等重要的过程。..._测试过程管理中包含哪些过程

政府数字化政务的人工智能与机器学习应用:如何提高政府工作效率-程序员宅基地

文章浏览阅读870次,点赞16次,收藏19次。1.背景介绍政府数字化政务是指政府利用数字技术、互联网、大数据、人工智能等新技术手段,对政府政务进行数字化改革,提高政府工作效率,提升政府服务质量的过程。随着人工智能(AI)和机器学习(ML)技术的快速发展,政府数字化政务中的人工智能与机器学习应用也逐渐成为政府改革的重要内容。政府数字化政务的人工智能与机器学习应用涉及多个领域,包括政策决策、政府服务、公共安全、社会治理等。在这些领域,人工...

ssm+mysql+微信小程序考研刷题平台_mysql刷题软件-程序员宅基地

文章浏览阅读219次,点赞2次,收藏4次。系统主要的用户为用户、管理员,他们的具体权限如下:用户:用户登录后可以对管理员上传的学习视频进行学习。用户可以选择题型进行练习。用户选择小程序提供的考研科目进行相关训练。用户可以进行水平测试,并且查看相关成绩用户可以进行错题集的整理管理员:管理员登录后可管理个人基本信息管理员登录后可管理个人基本信息管理员可以上传、发布考研的相关例题及其分析,并对题型进行管理管理员可以进行查看、搜索考研题目及错题情况。_mysql刷题软件

根据java代码描绘uml类图_Myeclipse8.5下JAVA代码导成UML类图-程序员宅基地

文章浏览阅读1.4k次。myelipse里有UML1和UML2两种方式,UML2功能更强大,但是两者生成过程差别不大1.建立Test工程,如下图,uml包存放uml类图package com.zz.domain;public class User {private int id;private String name;public int getId() {return id;}public void setId(int..._根据以下java代码画出类图

Flume自定义拦截器-程序员宅基地

文章浏览阅读174次。需求:一个topic包含很多个表信息,需要自动根据json字符串中的字段来写入到hive不同的表对应的路径中。发送到Kafka中的数据原本最外层原本没有pkDay和project,只有data和name。因为担心data里面会空值,所以根同事商量,让他们在最外层添加了project和pkDay字段。pkDay字段用于表的自动分区,proejct和name合起来用于自动拼接hive表的名称为 ..._flume拦截器自定义开发 kafka

java同时输入不同类型数据,Java Spring中同时访问多种不同数据库-程序员宅基地

文章浏览阅读380次。原标题:Java Spring中同时访问多种不同数据库 多样的工作要求,可以使用不同的工作方法,只要能获得结果,就不会徒劳。开发企业应用时我们常常遇到要同时访问多种不同数据库的问题,有时是必须把数据归档到某种数据仓库中,有时是要把数据变更推送到第三方数据库中。使用Spring框架时,使用单一数据库是非常容易的,但如果要同时访问多个数据库的话事件就变得复杂多了。本文以在Spring框架下开发一个Sp..._根据输入的不同连接不同的数据库

随便推点

EFT试验复位案例分析_eft电路图-程序员宅基地

文章浏览阅读3.6k次,点赞9次,收藏25次。本案例描述了晶振屏蔽以及开关电源变压器屏蔽对系统稳定工作的影响, 硬件设计时应考虑。_eft电路图

MR21更改价格_mr21 对于物料 zba89121 存在一个当前或未来标准价格-程序员宅基地

文章浏览阅读1.1k次。对于物料价格的更改,可以采取不同的手段:首先,我们来介绍MR21的方式。 需要说明的是,如果要对某一产品进行价格修改,必须满足的前提条件是: ■ 1、必须对价格生效的物料期间与对应会计期间进行开启; ■ 2、该产品在该物料期间未发生物料移动。执行MR21,例如更改物料1180051689的价格为20000元,系统提示“对于物料1180051689 存在一个当前或未来标准价格”,这是因为已经对该..._mr21 对于物料 zba89121 存在一个当前或未来标准价格

联想启天m420刷bios_联想启天M420台式机怎么装win7系统(完美解决usb)-程序员宅基地

文章浏览阅读7.4k次,点赞3次,收藏13次。[文章导读]联想启天M420是一款商用台式电脑,预装的是win10系统,用户还是喜欢win7系统,该台式机采用的intel 8代i5 8500CPU,在安装安装win7时有很多问题,在安装win7时要在BIOS中“关闭安全启动”和“开启兼容模式”,并且安装过程中usb不能使用,要采用联想win7新机型安装,且默认采用的uefi+gpt模式,要改成legacy+mbr引导,那么联想启天M420台式电..._启天m420刷bios

冗余数据一致性,到底如何保证?-程序员宅基地

文章浏览阅读2.7k次,点赞2次,收藏9次。一,为什么要冗余数据互联网数据量很大的业务场景,往往数据库需要进行水平切分来降低单库数据量。水平切分会有一个patition key,通过patition key的查询能..._保证冗余性

java 打包插件-程序员宅基地

文章浏览阅读88次。是时候闭环Java应用了 原创 2016-08-16 张开涛 你曾经因为部署/上线而痛苦吗?你曾经因为要去运维那改配置而烦恼吗?在我接触过的一些部署/上线方式中,曾碰到过以下一些问题:1、程序代码和依赖都是人工上传到服务器,不是通过工具进行部署和发布;2、目录结构没有规范,jar启动时通过-classpath任意指定;3、fat jar,把程序代码、配置文件和依赖jar都打包到一个jar中,改配置..._那么需要把上面的defaultjavatyperesolver类打包到插件中

VS2015,Microsoft Visual Studio 2005,SourceInsight4.0使用经验,Visual AssistX番茄助手的安装与基本使用9_番茄助手颜色-程序员宅基地

文章浏览阅读909次。1.得下载一个番茄插件,按alt+g才可以有函数跳转功能。2.不安装番茄插件,按F12也可以有跳转功能。3.进公司的VS工程是D:\sync\build\win路径,.sln才是打开工程的方式,一个是VS2005打开的,一个是VS2013打开的。4.公司库里的线程接口,在CmThreadManager.h 里,这个里面是我们的线程库,可以直接拿来用。CreateUserTaskThre..._番茄助手颜色

推荐文章

热门文章

相关标签