
15.C++实战开发教程-源代码讲解
文章平均质量分 79
C++是一种流行的高级编程语言,被广泛用于开发各种应用程序,包括操作系统、网络应用、游戏、桌面应用、嵌入式系统等等。如果你想要深入学习C++,可以通过对本专栏的学习进行掌握。总体来说,阅读C++源代码是提高你的C++编程能力的一种非常有效的方式。此外,这也是在学习和熟悉其他编程语言和框架时非常有用的
可芯智能科技研究院
本人毕业于中南大学,人工智能硕博学历,从事软件开发十五年。曾在TDK人工智能研发中心任职,深入探索机器视觉技术,参与图像识别、目标跟踪等项目,成功应用深度学习等前沿技术于实际场景。后加入ATL,专注新能源及新型电力系统研发,主导充电桩电源、双向储能电源、无人机电源等多个重要项目的设计开发,掌握电力拓扑设计、仿真分析等核心技术,结合人工智能与物联网技术提升产品性能。在软件开发方面,本人精通各种编程语言和技术框架,具备出色的软件开发及调试能力。本人紧跟时代步伐,致力于新质生产力领域的研究。愿与志同道合的朋友共学、共享、共成长,共同在新能源、新型电力系统及人工智能与机器视觉领域创造更多价值。
展开
-
C语言编写一个五子棋游戏-代码实例讲解与分析
初始化棋盘:使用一个二维数组来表示棋盘,通常五子棋棋盘是15x15的。打印棋盘:根据棋盘数组的内容打印当前棋盘状态。玩家输入:获取玩家下棋的位置(行列号)。落子逻辑:检查输入的有效性(是否在棋盘范围内,该位置是否已被占用),并在有效时更新棋盘。检查胜利:每次落子后检查是否有玩家获胜。轮流下棋:通过循环让两位玩家轮流下棋,直到有玩家获胜或棋盘填满。原创 2024-09-28 22:21:38 · 2166 阅读 · 0 评论 -
分析第一个C语言程序
C语言自带的函数称为库函数(Library Function)。库(Library)是编程中的一个基本概念,可以简单地认为它是一些列函数的集合,在磁盘上往往是一个文件夹。C语言自带的库称为标准库(Standard Library),其他公司或个人开发的库称为第三方库(Third-Party Library)。关于库的概念,我们已在《不要这样学习C语言,这是一个坑》中进行了详细介绍。除了库函数,我们还可以编写自己的函数,拓展程序的功能。自己编写的函数称为自定义函数。原创 2024-09-28 22:14:57 · 909 阅读 · 0 评论 -
C语言程序的错误和警告
编译器只能检查编译和链接阶段出现的问题,而可执行程序已经脱离了编译器,运行阶段出现问题编译器是无能为力的。警告(Warning)表示可能会发生错误(实际上未发生)或者代码不规范,但是程序能够正常运行,有的警告可以忽略,有的要引起注意。可以看出,C-Free 的错误提示信息比较少,不方便程序员纠错。VC 和 VS 的错误信息类似,只是中英文的差别。我敢保证,你写的代码肯定会发生错误,一定要有分析错误的能力,这是一个合格的程序员必备的技能。图7:C-Free 5.0 的错误提示。图2:VC 6.0 的提示。原创 2024-09-28 22:12:35 · 1024 阅读 · 0 评论 -
哪款C语言编译器(IDE)适合初学者?
C语言的集成开发环境有很多种,尤其是 Windows 下,多如牛毛,初学者往往不知道该如何选择,本节我们就针对 Windows、Linux 和 Mac OS 三大平台进行讲解。原创 2024-09-28 22:08:50 · 1198 阅读 · 0 评论 -
什么是工程/项目?
一个真正的程序(也可以说软件)往往包含多项功能,每一项功能都需要几十行甚至几千行、几万行的代码来实现,如果我们将这些代码都放到一个源文件中,那将会让人崩溃,不但源文件打开速度极慢,代码的编写和维护也将变得非常困难。在实际开发中,程序员都是将这些代码分门别类地放到多个源文件中。除了这些成千上万行的代码,一个程序往往还要包含图片、视频、音频、控件、库(也可以说框架)等其它资源,它们也都是一个一个地文件。原创 2024-09-28 22:03:31 · 1025 阅读 · 0 评论 -
什么是IDE(集成开发环境)?
它是一个综合性的软件应用程序,旨在为软件开发者提供一整套的、易于使用的工具集,以便他们能够更高效地编写、调试、测试和部署代码。它通过将各种开发工具集成在一起,为开发者提供了一个高效、便捷的工作环境。对于包含多个文件和复杂依赖关系的项目,IDE提供了项目管理工具,帮助开发者组织代码、管理资源(如图片、视频、第三方库等)、跟踪依赖项,并自动生成构建脚本。现代IDE通常支持与版本控制系统(如Git、SVN等)的集成,允许开发者直接在IDE内部进行代码的提交、拉取、分支管理等操作,进一步简化了版本控制流程。原创 2024-09-28 21:54:02 · 2036 阅读 · 0 评论 -
什么是源文件?
将代码保存到源文件只是软件开发的第一步。在开发过程中,还需要理解编译、链接等概念,掌握源代码管理和版本控制工具的使用,以及遵循良好的编程风格和规范。这些知识和技能将帮助开发者更加高效地编写、测试和维护代码,从而开发出高质量的软件产品。原创 2024-09-26 21:55:25 · 501 阅读 · 0 评论 -
C语言编译和链接详解(通俗易懂,深入本质)
编译就是将我们编写的源代码“翻译”成计算机可以识别的二进制格式,它们以目标文件的形式存在;链接就是一个“打包”的过程,它将所有的目标文件以及系统组件组合成一个可执行文件。如果不是特别强调,一般情况下我们所说的“编译器”实际上也包括了链接器,比如,你使用了哪种编译器?去哪里下载C语言编译器?我的编译器为什么报错了呢?原创 2024-09-26 21:54:29 · 1330 阅读 · 0 评论 -
编程时请选择正确的输入法,严格区分中英文
计算机起源于美国,C语言、等很多流行的编程语言都是美国人发明的,所以在编写代码的时候必须使用,尤其是标点符号,初学者一定要引起注意。例如,上节我们使用 puts 语句在显示器上输出内容:puts("C语言中文网");这里的括号、双引号、分号都必须是英文符号,而且是半角的。下图演示了如何将搜狗输入法切换到英文半角状态:图1:搜狗输入法初学者请务必注意标点符号的问题,它们在视觉上的差别很小,一旦将英文符号写成中文符号就会导致错误,而且往往不容易发现。我在给。原创 2024-09-26 21:52:44 · 501 阅读 · 0 评论 -
第一个C语言程序
我们有两种方式从计算机获得信息:一是看屏幕上的文字、图片、视频等,二是听从喇叭发出来的声音。让喇叭发出声音目前还比较麻烦,我们先来看看如何在屏幕上显示一些文字吧。在屏幕上显示文字非常简单,只需要一个语句,例如,下面的代码会让屏幕显示出“C语言中文网”:puts("C语言中文网");这里有一个生疏的词汇puts,用来让计算机在屏幕上显示文字。puts 是 output string 的缩写,意思是”输出字符串“。在C语言中,字符串需要用双引号" "包围起来,C语言中文网。原创 2024-09-26 21:51:32 · 361 阅读 · 0 评论 -
ASCII编码,将英文存储到计算机
前面我们已经讲到,计算机是以二进制的形式来存储数据的,它只认识 0 和 1 两个数字,我们在屏幕上看到的文字,在存储之前都被转换成了二进制(0和1序列),在显示时也要根据二进制找到对应的字符。可想而知,特定的文字必然对应着固定的二进制,否则在转换时将发生混乱。那么,怎样将文字与二进制对应起来呢?这就需要有一套规范,计算机公司和软件开发者都必须遵守,这样的一套规范就称为字符集(Character Set)或者字符编码(Character Encoding)。原创 2024-09-26 21:49:31 · 1052 阅读 · 0 评论 -
载入内存,让程序运行起来
如果你的电脑上安装了QQ,你希望和好友聊天,会双击QQ图标,打开QQ软件,输入账号和密码,然后登录就可以了。那么,QQ是怎么运行起来的呢?首先,有一点你要明确,你安装的QQ软件是保存在硬盘中的。双击QQ图标,操作系统就会知道你要运行这个软件,它会在硬盘中找到你安装的QQ软件,将数据(安装的软件本质上就是很多数据的集合)复制到内存。对!就是复制到内存!QQ不是在硬盘中运行的,而是在内存中运行的。为什么呢?因为内存的读写速度比硬盘快很多。原创 2024-09-26 21:48:10 · 616 阅读 · 0 评论 -
数据在内存中的存储(二进制形式存储)
计算机要处理的信息是多种多样的,如数字、文字、符号、图形、音频、视频等,这些信息在人们的眼里是不同的。但对于计算机来说,它们在内存中都是一样的,都是以二进制的形式来表示。要想学习编程,就必须了解二进制,它是计算机处理数据的基础。内存条是一个非常精密的部件,包含了上亿个电子元器件,它们很小,达到了纳米级别。这些元器件,实际上就是电路;电路的电压会变化,要么是 0V,要么是 5V,只有这两种电压。5V 是通电,用1来表示,0V 是断电,用0来表示。所以,一个元器件有2种状态,0 或者 1。原创 2024-09-26 21:46:21 · 769 阅读 · 0 评论 -
进制转换:二进制、八进制、十六进制、十进制之间的转换
本节前面两部分讲到的转换方法是通用的,任何进制之间的转换都可以采用,只是有时比较麻烦而已。二进制和八进制、十六进制之间的转换有非常简洁的方法,所以没有采用前面的方法。原创 2024-09-26 21:44:42 · 1216 阅读 · 0 评论 -
进制详解:二进制、八进制和十六进制
我们平时使用的数字都是由 0~9 共十个数字组成的,例如 1、9、10、297、952 等,一个数字最多能表示九,如果要表示十、十一、二十九、一百等,就需要多个数字组合起来。例如表示 5+8 的结果,一个数字不够,只能”进位“,用 13 来表示;这时”进一位“相当于十,”进两位“相当于二十。因为逢十进一(满十进一),也因为只有 0~9 共十个数字,所以叫做十进制(Decimalism)。十进制是在人类社会发展过程中自然形成的,它符合人们的思维习惯,例如人类有十根手指,也有十根脚趾。原创 2024-09-26 21:42:16 · 813 阅读 · 0 评论 -
C语言2048小游戏演示和说明
2048游戏是风靡一时的小游戏,我们提供的2048小游戏不依赖 TC 环境,不依赖任何第三方库,可以在 VS、CodeBlocks、DEV。设计 2048 小游戏的主要目的是让大家夯实 C 语言基础,训练编程思维,培养解决问题的思路,领略多姿多彩的 C 语言。等常见 IDE中编译通过。原创 2024-09-26 21:36:12 · 321 阅读 · 0 评论 -
英语和数学不好,能学编程吗?
当然,我们可以继续补充和完善这篇文章,以更全面地解答初学者的疑虑。很多初学者在踏入编程领域之前,都会担心自己的英语和数学基础是否足够。但实际上,这些担忧往往是多余的。下面,我将进一步阐述为什么英语基础不好和数学基础不好都不会成为学习编程的障碍。原创 2024-09-26 21:34:43 · 456 阅读 · 0 评论 -
学编程难吗?多久能入门?
定期对自己的学习成果进行反思和总结。找出自己的不足之处,并制定相应的改进计划。同时,也要学会欣赏自己的进步和成就,保持对编程的热爱和信心。原创 2024-09-26 16:15:13 · 900 阅读 · 0 评论 -
C语言是菜鸟和大神的分水岭
C语言被视为计算机科学和软件开发领域中的一个重要分水岭,这主要源于其底层特性和广泛的应用范围。它不仅是许多高级编程语言的基石,如C++、Java、Python(在某种程度上,通过C语言编写的CPython解释器)等,而且直接涉及到系统编程、嵌入式系统、游戏开发、操作系统开发等多个领域。因此,掌握C语言往往被视为从“菜鸟”到“大神”转变的一个重要标志,但这并不意味着C语言是唯一的分水岭,也不意味着所有使用C语言的人都是大神。原创 2024-09-25 16:13:45 · 1308 阅读 · 0 评论 -
HRTIM配置移相全桥过程
master、timerA、timerB频率设置成一致,方便计算。master的comp决定移相角,timerA不移动所以timerA的comp1按照常规的设置,timerB的comp设置成master的comp值与50%占空比值的和。先使能Master Timer,然后使能几组需要输出的PWM。Master用于同步TimerA/B/C/D/E/F.全文参考了这位up主的视频教程,需要观看的请移步,本文仅作为本人记录使用。视频中设置了4组PWM信号,本人应用于PSFB仅需两组互补PWM即可。原创 2024-01-10 14:25:06 · 1933 阅读 · 0 评论 -
C++作用范围/C++的作用域
类成员的名称具有类范围,该范围在整个类定义中扩展,与声明点无关。全局名称是在任何类、函数或命名空间之外声明的名称。对于全局名称,可见性也受链接规则的约束,这些规则确定名称是否在程序中的其他文件中可见。在函数或 lambda 中声明的名称(包括参数名称)具有局部范围。标签具有函数范围,这意味着它在整个函数正文中甚至在声明点之前都是可见的。在命名空间中声明的名称(在任何类或枚举定义或函数块之外)从其声明点到命名空间末尾可见。在for、if、while 或 switch 语句中声明的名称在语句块结束之前可见。原创 2023-07-22 21:24:03 · 158 阅读 · 0 评论 -
C++ 类型系统
C++还允许我们为已有类型创建自定义的类型别名,以便在代码编写中提高可读性。所有这些类型都构成了C++的类型体系,可以通过编程方式使用和扩展。掌握这些类型将有助于您设计和实现复杂的程序,同时允许您使用更好、更优化的编程方式。总体来说,C++的类型系统是非常强大和灵活的,允许开发者使用多种类型来设计和实现各种数据结构和算法。原创 2023-07-22 21:06:32 · 118 阅读 · 1 评论