用过Go语言的同学大概率遇到过这样的场景:声明了一个指针变量没初始化(默认是nil),却能直接调用它的方法,程序不仅不崩溃,还能正常输出结果。
多态(polymorphism)的概念:通俗来说,就是多种形态。多态分为编译时多态(静态多态)和运行时多态(动态多态),这里我们重点讲运行时多态,编译时多态(静...
我们对于list的学习和前面string与vector类似,先看官方文档:【list的文档介绍】:
对于vector的学习,和list的学习基本一样,先会用,再可以自己模拟实现vector就行,那我们就围绕着两个方面来说明吧。 vector学习参考文档【ve...
通常情况下,使用模板可以实现一些与类型无关的代码,但对于一些特殊类型的可能会得到一些错误的结果,需要特殊处理, 比如:实现了一个专门用来进行小于比较的函数模板
类实例化出的每个对象,都有独立的数据空间,所以对象中肯定包含成员变量,那么成员函数是否包含呢? 首先我们要知道,函数被编译后是⼀段指令,对象中是没办法存储,这...
栈是一种特殊的线性表,遵循LIFO(Last In First Out)原则,即最后入栈的元素最先出栈。它只允许在固定的一端(称为栈顶)进行插入(压栈)和删除(...
对于这一题,我们就要用到快慢指针的思路。 首先先看一下快慢指针的概念:使用两个移动速度不同的指针在数组或链表等序列结构上移动。 具体怎么实践呢,我们来看图分...
概念:链表是⼀种物理存储结构上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。 如图:
在编程世界中,数据持久化是每个开发者都必须掌握的核心技能。C语言作为系统级编程语言的代表,其文件操作功能既强大又灵活。本文将带你全面了解C语言文件操作的方方面面...
承接上篇内容,本文将继续深入讲解C语言中更复杂的字符串处理函数,包括字符串比较函数strcmp/strncmp、字符串查找函数strstr、字符串分割函数str...
在C语言编程中,字符和字符串的处理是基础且重要的内容。本文将详细介绍C语言标准库中常用的字符分类函数、字符转换函数以及基础字符串操作函数(strlen、strc...
C99 中,结构中的最后⼀个元素允许是未知大小的数组,这就叫做柔性数组成员。 例如:
在上一篇博客《动态内存管理全解析:malloc、calloc、realloc与free的正确使用》中,我们系统讲解了动态内存管理的基本操作。然而在实际开发中,即...
继上文【C语言】指针笔试题1,此篇文章是指针学习的最终章,笔试题详解。建议对指针有了深入理解再来食用。
经过前面指针基础、指针进阶1、指针进阶2的学习,咱们对指针已经有了深入的理解,那咱们就来看看指针相关的一些笔试题!
线性表指的是具有相同数据类型的n(n>=0)个数的有限序列。 假设a1是第一个数据元素,称为表头元素;an是最后一个数据元素,称为表尾元素;ai(1<i<n)...
那么咱们应该怎么来嵌套呢,指针,指针在固定的机器下是固定的。所以咱们可以这样来自引用:
在C语言中,函数指针是一种强大的工具,它允许我们将函数作为参数传递、动态调用函数,甚至实现回调机制。本文将继续探讨指针的高级用法,重点介绍函数指针及其应用场景,...
经过上篇文章【指针基础】,咱们对指针有了基础的了解,所以这文章就来深入学习指针。所以这篇文章适合有一定指针基础的学习。