C/C++
文章平均质量分 90
这是一个关于C/C++编程、数据管理和技术应用的地方。在这里,你将找到有关C++编程的教程、技巧,以及关于数据管理和技术应用的深入解析和实践指南。无论你是初学者还是有经验的开发者,我都希望能够为你提供有价值的内容,帮助你提升编程技能、解决问题和探索新的领域。让我们一起探索C/C++编程的奇妙世界吧
寒晓星
努力学习C/C++、数据结构、linux系统编程、网络编程、数据库、Qt、5G物联网工程开发中,喜欢挑战自己,不断学习新的知识和技能,以提高自己的能力和水平。对物联网嵌入式领域充满热情,希望能够在这个领域做出更多的贡献。
展开
-
【第六天】c++虚函数多态
定义及用法:父类成员函数前加virtual修饰,该函数即为虚函数子类重写父类虚函数:函数名、返回值类型、参数类型个数顺序完全一致。动态多态条件:有继承、子类重写(覆盖)父类的虚函数,父类指针 指向子类空间。重载:同一作用域,同名函数,参数的顺序、个数、类型不同 都可以重载。函数的返回值 类型不能作为重载条件(例:函数重载、运算符重载)重定义:有继承,子类 重定义 父类的同名函数(非虚函数), 参数顺序、个数、类型可以 不同。子类的同名函数会屏蔽父类的所有同名函数(可以通过作用域解决)原创 2024-02-06 20:21:35 · 1407 阅读 · 0 评论 -
[第五天】C++继承:单继承、多继承、菱形继承和虚继承的深度解析
class 父类{};class 子类:继承方式 父类名//新增子类数据继承方式:private protected public(推荐)公共继承 保持不变,保护继承变保护,私有继承变私有,所有父类私有在子类中不可见。子类虚继承父类 子类只会保存一份公共数据。方式:在继承方式 前加virtual修饰。原创 2024-02-06 20:19:15 · 1775 阅读 · 0 评论 -
【第七天】C++模板探秘:函数模板、类模板以及类型转换的深入解析
函数模板(类模板):将功能相同,类型不同的函数(类)的类型抽象成虚拟的类型(函数类型和形参类型不具体指定)。不必定义多个函数,当调用函数(类实例化对 象)的时候,编译器自动将虚拟的类型 具体化。原创 2024-02-24 20:44:36 · 1031 阅读 · 0 评论 -
【第八天】C++异常的抛出、捕获以及标准异常库
异常:是指在程序运行的过程中发生的一些异常事件(如:除0溢出,数组下标越界,所要 读取的文件不存在,空指针,内存不足,访问非法内存等等)。(异常是一个类。)异常处理就是处理程序中的错误。原创 2024-02-24 20:45:03 · 1858 阅读 · 0 评论 -
【第十天】C++函数对象/仿函数、谓词、适配器及常见algorithm算法
重载了函数调用运算符()的类 实例化的对象叫函数对象,也叫仿函数。如果函数对象 有一个参数 叫:一元函数对象/仿函数如果函数对象 有二个参数 叫:二元函数对象/仿函数如果函数对象 有三个及以上参数 叫:多元函数对象/仿函数原创 2024-02-29 20:06:41 · 893 阅读 · 0 评论 -
【第三天】C++类和对象进阶指南:从堆区空间操作到友元的深度掌握
new与C语言中mallocdelete和C语言中free作用基本相同区别:new 不用强制类型转换new在申请空间的时候可以 初始化空间内容。原创 2023-10-23 21:00:00 · 348 阅读 · 14 评论 -
[第九天】C++的string类以及STL标准模板库(万字详细解说)
为提高复用性,建立数据结构和算法的一套标准,诞生了STL(Standard Template Library,标准模板库),STL从广义上分为三大组件:容器(container)、算法(algorithm)、迭代器(iterator),容器和算法之间通过迭代器进行无缝连接。.STL几乎所有的代码都采用.模板类或者模板函数,这相比传统的由函数和类组成的库来说提供了更好的代码重用机会。原创 2024-02-29 20:04:49 · 1064 阅读 · 0 评论 -
【第四天]C++高级类和对象:运算符重载、string类和智能指针的深度解析
运算符重载 是,不能创建新运算符。运算符重载关键字operator语法:operator@ (@表示被重载的运算符)思路:1、弄懂 函数的参数中参数个数取决于运算符是一元还是二元。2、弄懂运算符左边的运算对象 是类的对象还是其他类的对象:全局函数实现(一元是一个参数,二元是两个参数)成员函数实现(一元没有参数,二元是一个参数)--推荐其他:只能是全局函数实现。原创 2023-10-24 20:00:00 · 766 阅读 · 26 评论 -
【第一天】C++面向对象程序设计-基础入门(超详细)
C++是对C的扩展,任何有效的c程序都是有效的c++程序,c++程序可以使用已有的c程序库。C++语言在c语言的基础上添加了面向对象编程和泛型编程的支持。c++融合了3种不同的编程方式:c语言代表的过程性语言.c++在c语言基础上添加的类代表的面向对象语言.c++模板支持的泛型编程。我们常常将这两门语言统称为“C/C++”。原创 2023-07-23 17:41:24 · 1314 阅读 · 22 评论 -
【C语言】嵌入式C语言项目管理利器:深入理解Makefile的应用与实践
如果只修改了b.c 使用gcc编译 需要对所有文件重新编译。makefile可避免此问题.makefile变量类似于C语言中的宏,变量名可以数字开头大小写敏感,一般在头部定义。原创 2023-07-26 21:15:00 · 1184 阅读 · 59 评论 -
【C语言】高效处理文件内容:C语言的文件操作技巧与窍门
快读:size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream);块写:size_t fwrite(void *ptr, size_t size, size_t n, FILE *stream);函数说明:fwrite 函数将ptr 指向的内存里的数据,向stream 所标示的文件中写入数据,一块是size个字节,共n块。读一个字符串:char *fgets(char *s, int size, FILE *stream)原创 2023-07-24 21:15:00 · 983 阅读 · 33 评论 -
【C语言】深入理解C语言数据类型:从结构体到共用体和枚举的全面解析
结构体定义由关键字struct和结构体名组成结构体类型结构体变量struct stuint num;//定义结构体stu//定义结构体变量lucy结构体类型结构体变量struct stuint num;}lucy;//定义结构体stu同时定义结构体变量lucy一次性结构体structint num;}lucy;注:结构体变量可以与成员名相同。访问成员方式:lucy.num(继承类型,int型)lucy.name(char型,数组名代表首元素地址)定义。原创 2023-07-17 09:15:00 · 695 阅读 · 38 评论 -
【C语言】深入解密C语言组包与解包的用法、应用以及const的详细解说
用法:int sprintf(char *str, const char *format,...);例:sscanf("1234 5678", "%*d %s", buf);//num为只读,只能初始化,不能被赋值。*p是只读 不可通过*p 修改p所指向的空间内容。-- 这是 C 字符串,是函数检索数据的源。注:从前往后尽可能多的读取,不匹配时立即退出,*p可读可写 可以通过*p修改p指向的空间内容。注:从前往后尽可能多的读取,不匹配时立即退出。p只读 除了初始化 不能修改p的指向。空格字符、非空格字符。原创 2023-07-14 21:15:00 · 1687 阅读 · 25 评论 -
【C语言】深入精讲字符串处理函数使用与优化
用法:char *strstr(const char *haystack, const char *needle);用法:int strcmp(const char *s1, const char *s2);用法:char *strcpy(char *dest, const char *src);用法:char *strcat(char *dest, const char *src);用法:char *strchr(const char *s, int c);==0 字符串s1 == 字符串s2。原创 2023-07-12 21:15:00 · 601 阅读 · 24 评论 -
【C语言提升】深入了解动态内存管理
1、静态分配在程序编译或运行过程中,按事先规定大小分配内存空间的分配方式。如int a [10]必须事先知道所需空间的大小。分配在栈区或全局变量区,一般以数组的形式。2、动态分配在程序运行过程中,根据需要大小自由分配所需空间。按需分配。分配在堆区,一般使用特定的函数进行分配。原创 2023-07-09 23:30:00 · 242 阅读 · 21 评论 -
【C语言】深入理解C语言指针:从入门到精通,掌握指针的关键技巧和应用
修饰指针变量p(*p),要保存,先定义,后用*p替换。例:1、定义一个指针变量p 其保存int类型的数的地址;int *p;2、定义一个指针变量p 其保存的是数组首地址;int (*p)[N](N为具体数值)3、定义一个指针变量p 其保存的是函数的入口地址;4、定义一个指针变量p 其保存的是结构体变量的地址struct stu lucy;5、定义一个指针变量p 其保存的是指针变量int *q的地址;int **p(指针的指针)在32位平台任何类型的指针变量都是4字节在。原创 2023-07-08 00:30:00 · 403 阅读 · 22 评论 -
【嵌入式C语言】预处理
在32位平台 每一个进程 占4G空间(虚拟空间)原创 2023-07-01 18:47:05 · 178 阅读 · 13 评论 -
【C语言】数组以及键盘获取字符串
1、步骤:1、数组名 和 [] 表示数组2、将数组的个数 放入[]里面3、用元素的类型 定义一个变量4、从上 往下 替换。(1):定义一个数组 有5个元素 每个元素为intint arr[5];(2):定义一个数组 有5个元素 每个元素为int *(3):定义一个数组 有5个元素 每个元素为数组,该数组有10个元素每个元素为int(4):定义一个数组 有5个元素 每个元素为函数的入口地址,该函数有两个int型形参, int返回值类型2、数组名作为类型。原创 2023-06-21 18:39:24 · 3399 阅读 · 6 评论 -
【C语言】C语言函数详解:从基础到高级,掌握函数的使用技巧和常见问题解析
1、函数声明(先调用 后定义情况使用,写在调用前)告知编译器 该函数的函数名、形参及返回值类型2、函数定义确定函数名、函数的形参、函数的返回值类型,实现函数体功能3、函数调用执行函数体。函数名+(实参);原创 2023-06-24 16:24:44 · 992 阅读 · 8 评论 -
[c语言]详细入门学习进阶教程
/ 行注释/* */ 这是块注释,可包含多行,不能 嵌套(块注释里面再写块注释)mian 主函数,因main是函数调用的入口,故只有一个。其他非main函数可以多个在函数外定义的变量为全局变量,在复合语句中的变量定义的变量为局部变量注:复合语句外的变量不一定是全局变量,因可能有复合语句嵌套。如果局部变量不初始化,内容不确定。原创 2023-06-18 10:34:29 · 862 阅读 · 1 评论