- 博客(637)
- 资源 (7)
- 收藏
- 关注
原创 呐,c语言学习你想要的都在这里
对于C语言怎么学习这个话题,很多读者一直在问,因为网上类似的文章很多了,这里就不长篇大论,可能你也看过不少,究竟孰是孰非需要你自己去思考、判断和实践。说实在的,个人认为在你入门或者基础学习阶段,教材、软件(写代码)和教学视频这三样就够了。本文主要是给大家提供一些资料,各位按需选择。关于书籍学习任何一门课程你首先得有书吧,有人说C语言书这么多怎么办?没事,我们找了36本C语言的书,你自己慢慢看,慢慢选,挑自己喜欢的的,适合你的才是最好的!这里我们不评价哪本好、哪本坏,所有东西都是优缺点并存,不过对于初
2020-12-16 23:07:59 4847 7
原创 干货收藏:68道C语言与C++常见面试题
1 变量的声明和定义有什么区别变量的定义为变量分配地址和存储空间, 变量的声明不分配地址。一个变量可以在多个地方声明, 但是只在一个地方定义。 加入extern 修饰的是变量的声明,说明此变量将在文件以外或在文件后面部分定义。说明:很多时候一个变量,只是声明不分配内存空间,直到具体使用时才初始化,分配内存空间, 如外部变量。来源|公众号:C语言与CPP编程int main() { extern int A; //这是个声明而不是定义,声明A是一个已经定义了的外部变量 /
2020-10-26 15:20:32 4851 10
原创 python如何安装扩展包
我们在下载包时,若像从国内的仓库中下载,需要引用国内的镜像源,一次性的方式是:pip install 包名 -i 镜像源。的方式进行安装,不过由于这些包在国外下载,因此需要配置合适的镜像促使其下载更快。在编译器中使用import方法引入包,然后print下,如果没报错,说明安装成功。我们安装了扩展包,按照扩展包的功能详细的去使用它,这就是我们总体使用第三库的流程。这个命令可以极快的下载opencv包。将清华大学的镜像源永久配置到环境中。一般我们在anconda中通过。移除某些镜像源用如下命令。
2024-11-02 08:00:00 153
原创 Python读写文件
r 只读,且文件不存在会报错。w 文件只写,若文件不存在则创建,写入时会覆盖原有内容。w+ 文件可读可写,若文件不存在则创建,写入时会覆盖原有内容。a+ 文件可读可写,若文件不存在则创建,写入时会追加到文件末尾.
2024-11-01 08:00:00 741
原创 python异常处理-21
异常就是一个语法正确的Python程序,运行的时候,可能发生的错误。运行期检测到的错误被称为异常。类似于上图这种就是异常。Python是如何捕获这些异常呢?提供了一种捕捉结构:try-except-else-finally。用于处理运行过程中可能会遇到的异常。语法:存在异常的示例:不存在异常的示例:GeneratorExit 生成器(generator)发生异常来通知退出StandardError 所有的内建标准异常的基类ArithmeticError 所有数值计算错误的基类Floatin
2024-10-31 08:00:00 674
原创 python类与对象
什么是面向过程呢?面向过程简而言之可以理解为面向解决步骤,比如:今天你要去新公司上班了,今天你要入职上班的步骤顺序就是面向过程。从这一过程不难看出,面向过程是的,每一步都与前一步相关。
2024-10-30 08:00:00 1821
原创 python常见内置函数
若一个可迭代对象(可循环遍历的对象)中所有元素为真,结果为真。若一个可迭代对象中存在某一个元素为真,结果为真。返回一个x除以y的商和余数,结果为一个元组。返回一个枚举对象,包含其索引和值。执行字符串表达式,并返回结果。计算可迭代对象所有元素的和。执行一串字符串逻辑代码。返回可迭代对象中的最大值。返回可迭代对象中的最小值。
2024-10-29 08:00:00 189
原创 python函数-18
def 函数名():封装的逻辑函数需要用def作为开头,算作标识。函数名的定义规则跟变量命名一样,需要见名知意,之后再按照命名规范来。函数名后一定要加小括号(),小括号后跟冒号:。之后,新开一行进行缩进,缩进后写封装的逻辑。
2024-10-28 08:00:00 873
原创 C++对C的扩展(二)---变量、类型和三目运算符
此代码在c++下会编译失败,而在c语言下会编译通过. 这是因为在C++中会对检测到对a进行了重定义,而在C语言中不会。
2024-10-16 08:00:00 18
原创 C++对C的扩展(一)---作用域运算符和命名空间
一般来说,如果有两个同名变量,一个是全局变量,另一个是局部变量,那么局部变量在其作用域内具有较高的优先权,它将屏蔽全局变量。 试着运行以上代码,可以发现输出结果是“a:20”。 这是因为在test函数的输出语句中,使用的变量a是test函数内定义的局部变量,因此输出的结果为局部变量a的值,而非全局变量a的值。 因此为解决局部变量与全局变量的重名问题,就有了作用域运算符——“::”
2024-10-15 08:00:00 25
原创 2. C++初识
而使用 OOP 技术,常常要使用许多代码模块,每个模块都只提供特定的功能,它们是彼此独立的,这样就增大了代码重用的几率,更加有利于软件的开发、维护和升级。 由于C使用不同的扩展名来表示不同文件类型,因此用一些特殊的扩展名(如hpp或hxx)表示c++的头文件也是可以的,ANSI/IOS标准委员会也认为是可以的,但是关键问题是用哪个比较好,最后一致同意不使用任何扩展名。 把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。是指标识符的各种可见范围。
2024-10-14 14:38:11 25
原创 python断言和Debug
assert:测试判断表示式必须为真的工具。assert 表达式如果表达式为真,断言后的语句可正常执行。一旦断言为假,程序会报错。断言是Python的调试工具,用以测试某些值是否与正常的预期一致,一旦不一致,则程序某些逻辑存在问题。
2024-10-13 08:15:00 274
原创 python的if判断
if后跟的一定是判断的逻辑,结果一定是布尔值。布尔值之后用英文冒号:标识,下一行一定要使用缩进块,表示这是if成立后执行的逻辑。缩进快可以使用tab键,也可以用空格,但切记选择其中一个使用即可,不能混用,否则会报错。else后面不跟任何的判断逻辑,它一定是if不成立的选项。它的后面只需跟冒号:即可。下一行同样需要使用缩进块,表示这是if不成立后执行的逻辑。省略else:else也可以省略不写,直接在下一行重开新的逻辑。
2024-10-11 20:03:58 332
原创 python可变数据类型和不可变数据类型
先看一段代码。再看另一段代码。第一段代码中,value2的值没有随value1而改。但在第二段代码中,list2的值跟着list1的操作而变化。这是为什么呢?原因就在:Python的数据类型区分为和。
2024-10-11 20:01:22 531
原创 python之详解字典
但,二者有个根本的不同,字典是键值对,每个元素不是单独的值。value:当查询的键不存在,可通过设定默认值,让其返回这个默认值。字典无法用 字典名[index] 的方式访问,可通过访问键的方式访问到值。values:这一方法可获取字典所有的value。del:根据字典的键,删除字典键值对。返回值:成功则返回被删除键对应的值,失败会报错。get:提供字典的键,访问键对应的值。返回值:字典类型的key,value。pop:输入键,删除字典的键值对。返回值:字典类型的value。返回值:字典类型的key。
2024-10-11 07:30:00 398
原创 python之详解集合
但,可将集合转为列表,再由列表访问元素。不过,由于集合是无序的,因此通过下标访问没实际意义。discard:元素在集合中,则移除该元素,否则不做任何操作。pop:随机移除并返回集合中的一个元素。如果集合为空,会报错。这种方式访问的,其作用在于快速读取,而不是针对某个元素。remove:元素在集合中,则移除该元素,否则会报错。由于集合不能通过下标访问,因此是不支持通过下标修改的。可以通过先删除待修改元素,再添加的方式修改。返回值:成功则返回元素,失败报错。add:为集合添加一个元素。
2024-10-10 07:30:00 431
原创 python之详解元组
有序的不可变容器,元素不能被修改。元组用小括号()表示。与列表类似,可以用 元组名[index] 访问其中的元素。示例:注意:如果定义的元组只有一个元素,一定要在此元素后加逗号(,),否则会识别为字符串。示例:index方法:与字符串类似,获取待查询元素的下标。返回值。成功返回索引。失败报错。示例:由于元组不能修改,因此没有插入、修改和删除的函数方法。如果非要修改一个元组,也不是没有办法。可以先将元组转为列表,再用列表的方法操作,最后再把列表转回元组。示例:因此,元组的方法与列表的方
2024-10-09 07:30:00 314
原创 python之详解列表
可理解为将另一个列表append到新列表的后面。添加:添加列表元素有三种方法,分别是append、insert和extend。删除:共有三种方法,分别是pop、remove、del和clear。sort:对列表内的元素按照大小进行排序。insert:根据给定的索引位置,在前面添加。修改:直接通过索引下标去修改列表的元素。append:直接在列表尾部进行添加。remove:删除匹配到的第一个元素。pop:删除列表最后一个元素。clear:删除列表全部元素。del:删除指定索引的元素。返回值:删除的那个元素。
2024-10-08 07:30:00 472
原创 python之详解字符串
并且,符号只是取字符方向的不同,正数从头开始取,负数从尾部开始取。区别在于:当查找不到待查找子字符串时,会报错。结果:子字符串存在,返回第一个子字符串下标索引。子字符串不存之,返回-1。lstrip和rstrip:去掉字符串左边和右边空格或给定的字符串。endwith:判断是否以某个子字符串结尾,返回值为布尔值。partition:按照给定的字符,将原字符串分为三部分。结果:无论给定的字符存不存在字符串中,都返回一个列表。replace:替换原字符串中的子字符串。strip:去掉两边的空格或给定的字符串。
2024-10-07 07:30:00 1704
原创 C++概述
因为在c语言方面大量投入的程序员使其完全丢掉c语言那种编程的思考方式,转而去接受一种新的语言,新的思维,那么将会导致这些程序员中大部分人在短时间内可能毫无成果,使其生产率降低。但是如果让这些c程序员在已有知识的基础上,再去学习c++语言,理解运用OOP,那么也只是在其已有思维的基础上进行扩展而已,这样可以保持其更好的生产率。学好C语言,可以为我们将来进一步地学习C++语言打好基础,而C++语言的学习,也会促进我们对于C语言的理解,从而更好地运用C语言。1)C++是C语言的加强,是一种更好的C语言。
2024-10-05 20:10:09 964
原创 2024年最全的C++面试题
变量的定义为变量分配地址和存储空间, 变量的声明不分配地址。一个变量可以在多个地方声明, 但是只在一个地方定义。加入extern 修饰的是变量的声明,说明此变量将在文件以外或在文件后面部分定义。说明:很多时候一个变量,只是声明不分配内存空间,直到具体使用时才初始化,分配内存空间, 如外部变量。int main()//这是个声明而不是定义,声明A是一个已经定义了的外部变量//注意:声明外部变量时可以把变量类型去掉如:extern A;dosth();//执行函数int A;
2024-10-02 22:33:31 1119
原创 C++七种异常处理
在C++中,使用异常机制可以提高程序的健壮性和可维护性。异常是在程序运行时发生的一个事件,它会打断正在执行的程序的正常流程。C++异常处理机制可以使程序在出现异常时,进行异常处理,而不是退出程序。以上就是C++异常处理的一些基本用法。在实际编程中,应该尽量避免使用C++异常规范,尽可能使用C++标准库提供的异常类,并在函数声明中明确指出可能抛出的异常类型,以保证代码的可维护性和可读性。在函数中使用异常声明。在函数中使用异常声明。在构造函数中抛出异常。在析构函数中捕获异常。
2024-10-02 19:01:17 339
原创 python之认识变量
字符串(str):由字符组成的序列,可以用单引号或双引号括起来。布尔型(bool):只有两个取值,即True和False。列表(list):有序的可变容器,可以存储不同类型的元素。整型(int):不带小数点的整数,可以是正数、负数或零。元组(tuple):有序的不可变容器,元素不能被修改。字典(dict):无序的可变容器,由键值对组成。浮点型(float):带有小数点的数值。集合(set):无序的不重复元素集。
2024-10-02 14:55:09 505
原创 天呐!关于PyCharm你竟然一无所知?
PyCharm 是一种专为 Python 开发而设计的集成开发环境(IDE),由 JetBrains 开发。智能代码编辑:具有智能代码补全、语法检查、代码重构等功能,提高开发效率。项目管理:方便地创建、组织和管理 Python 项目。调试工具:支持断点调试、变量查看、单步执行等调试操作。版本控制集成:可与常见的版本控制系统(如 Git)集成。测试支持:便于编写和运行单元测试。数据库支持:连接和操作数据库。插件丰富:可以通过安装插件扩展功能。
2024-10-02 09:00:29 312
原创 全站最详细的Python环境配置步骤
一般而言,社区版足够我们开发使用,如果确实需要专用版,学生可申请教育许可证,其他人可购买或破解。这里展示的是如何在Windows上下载、安装Pycharm工具,Linux的步骤类似。并且,在编程的时候尽量不要使用中文命名,否则会导致一些错误。这里我一般直接装在C盘,切记用户名不能是中文,如果是中文会出问题。切记,这里的第二个环境是一定要勾选的,否则需要手动添加环境变量。如果不愿意暴露自己的邮箱,也可选择下方的skip,跳过此选项。按照顺序输入,若出现图中场景,代表成功安装环境。安装过程中需要等待一段时间。
2024-10-01 20:30:54 2962
原创 python简介
Python 是一种高级编程语言,其以简洁、易读和强大的功能而著称。其优点有:1、简洁易读:Python 语法简洁,采用缩进表示代码块,这使得代码更加清晰和易于维护。它的设计哲学强调代码的可读性和简洁性,使得程序员可以用更少的代码实现复杂的功能。2、面向对象:Python 是一种完全支持面向对象编程(OOP)的语言,提供了类、继承、封装和多态等 OOP 特性。这使得 Python 能够很好地处理复杂的数据结构和逻辑关系。
2024-10-01 19:10:35 1164
原创 Qt_30道常见面试题及答案
答:可以在类中使用signals 关键字声明自定义信号,使用 slots 关键字声明自定义槽,并使用 connect 函数将信号和槽进行连接。答:可以继承自 QWidget 或其他已有控件,并实现自定义的功能和界面。
2024-04-12 22:20:34 6528
原创 Qt - 获取系统当前时间
函数将日期时间对象转换为字符串格式,并指定输出的格式为"yyyy-MM-dd hh:mm:ss"。的指针,需要使用相应的成员来访问时间信息。另外,时间的显示格式可能会因操作系统和编译器的不同而有所差异。这样,你就可以通过 Qt 获取系统当前时间,并根据需要进行进一步的处理或显示。请确保在使用 Qt 库时已经包含了相关的头文件,并在项目中正确配置和链接 Qt 库。函数来获取系统当前时间,并且可以精确到秒。函数来获取系统当前时间,并精确到秒。分别获取年、月、日、小时、分钟和秒,并将它们打印出来。
2024-04-12 20:22:36 4456
原创 Qt之QSS样式表
QSS(Qt Style Sheet)样式表是一种用于描述图形用户界面(GUI)样式的语言。它允许开发者为应用程序的控件定义视觉外观,例如颜色、字体、尺寸和布局等。QSS 样式表的主要目的是提供一种简洁而灵活的方式来美化应用程序的界面,使其具有一致的外观和风格。通过使用 QSS,开发者可以分离界面的样式和功能代码,从而更容易维护和定制界面的外观。QSS 样式表通常以.qss文件的形式保存,其中包含了一系列的样式规则。这些规则使用选择器来指定要应用样式的控件,以及对应的样式属性和值。
2024-04-10 14:50:24 1903 1
原创 Qt之线程的使用
QtConcurrent模块扩展了Qt Core模块中提供的基本线程支持,并简化了可在所有可用CPU内核上并行执行的代码的开发。在本文中,我们将探讨 Qt 线程的使用,并通过示例来展示如何在 Qt 应用程序中创建和管理线程。线程是程序执行的独立路径,每个线程可以同时执行不同的任务。在实际应用中,需要根据任务的特性和需求来合理规划线程的数量和使用方式。请注意,在实际应用中,你可能需要在线程中处理更复杂的任务,并在适当的时候进行线程间的通信和同步。可以方便地管理一组线程,并将任务分配到空闲的线程中执行。
2024-04-09 10:25:06 1166
原创 Qt Creator实例之图标主题
Chart themes 是 Qt Creator 中图表的主题,它可以用于改变图表的外观和风格,使其更符合你的需求和设计。此示例显示了所有支持的图表类型的不同内置主题的外观。为了给结果一个更和谐的外观,应用程序的背景调色板是根据所选主题定制的。
2024-04-05 10:57:19 529
原创 书写高质量Sql语句的43条建议
当需要在一个查询中引用另一个查询的结果时,可以使用子查询。但要注意子查询的性能影响,避免嵌套过深。:对于需要进行聚合操作的查询,使用合适的聚合函数(SUM、AVG、COUNT 等)。:随着数据量的增长和需求的变化,定期审查和优化重要的查询,以确保其性能良好。:使用性能监控工具,了解查询的执行计划和性能瓶颈,并进行相应的优化。:熟悉你所使用的数据库的特定特性和函数,充分利用它们提供的功能。:根据数据的特点,将大型表划分为多个分区,提高查询性能和管理性。:对于经常用于查询的列,创建适当的索引以提高查询性能。
2024-04-05 10:03:12 343
原创 Qt与OpenCV实现图像模板匹配
请注意,这只是一个简单的示例,实际的模板匹配可能需要根据具体需求进行更多的调整和优化。安装 OpenCV:首先,确保你已经安装了 OpenCV 库,并将其配置到你的开发环境中。加载和显示图像:使用 Qt 的图像加载和显示功能,将源图像和模板图像加载到界面上进行显示。在 Qt 界面上显示结果:将匹配结果显示在 Qt 的界面上,以便用户可以观察和交互。处理匹配结果:根据匹配结果,你可以进行进一步的处理,例如绘制匹配区域、提取特征等。最后,在源图像上绘制匹配结果,并将结果显示在 Qt 界面上。
2024-04-04 22:22:33 663
原创 Qt学习路线推荐(超硬核)
同时,不断探索和尝试新的功能,结合自己的项目需求进行实践,将有助于提高你的 Qt 开发技能。Qt 是一个跨平台的 C++图形用户界面应用程序开发框架,它具有强大的功能和丰富的工具,广泛应用于桌面应用程序、移动应用程序和嵌入式系统等领域。:Qt 的官方文档和教程提供了详细的信息和示例,是学习 Qt 的重要资源。:当你对基础有了一定的掌握后,可以深入学习 Qt 的高级特性,如多线程、网络编程、数据库访问等,以满足更复杂的项目需求。学习使用 Qt 的可视化设计工具,如 Qt Designer,创建用户界面。
2024-04-04 22:09:57 1067
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人