- 博客(17)
- 收藏
- 关注
原创 数据结构2.(双向链表,循环链表及内核链表)
本文详细介绍了三种链表的实现方法:双向链表、循环链表和内核链表。双向链表部分包含节点定义、创建、头插/尾插法、遍历、查找、修改、删除等操作实现;循环链表在双向链表基础上增加了循环特性,调整了遍历条件;内核链表部分分析了Linux内核中的链表实现,包括节点定义、初始化、插入/删除操作以及各类遍历宏定义。全文通过代码示例展示了链表的核心操作,重点比较了不同链表类型在实现上的差异,特别是循环链表和内核链表在结构设计和操作实现上的优化技巧。
2025-08-05 19:21:52
445
原创 数据结构1.(概念及链表)
本文系统介绍了数据结构与链表的相关知识。首先阐述了数据结构的基本概念,包括时间复杂度(O(1)、O(n)、O(logn)等)和空间复杂度的分析方法,以及逻辑结构(线性/非线性)和存储结构(顺序/链式等)的分类。重点讲解了链表的特点、分类(单向/双向/循环/内核链表)及各种操作实现:创建空链表、头插/尾插法、遍历查找(常规/中间/倒数节点)、增删改节点、链表倒置、排序(冒泡/选择)等核心算法,并提供了详细的C语言实现代码。最后介绍了Makefile工程管理工具的基本使用规则。全文内容详实,涵盖了链表数据结构的
2025-08-03 23:57:43
1014
原创 C语言进阶(位运算符,内存管理及代码调试)
本文摘要: 位运算符:介绍按位与(&)、或(|)、异或(^)、取反(~)及位移运算符(<< >>)的功能与优先级,展示通过位运算实现数据交换和位操作的应用实例。 内存管理:详解C语言堆区操作,包括malloc/free函数使用、内存泄漏问题及示例代码。强调动态内存分配后必须释放的重要性。 代码调试: 语法错误:区分warning和error,提供修改策略 逻辑错误:介绍printf打印调试和GDB工具使用 段错误:分析产生原因及gdb+core文件调试方法 内存泄漏检测:使用
2025-07-31 23:51:11
1199
原创 C语言高级(构造数据类型)
本文系统介绍了C语言中结构体、共用体和枚举的语法特性及应用。主要内容包括:1.结构体部分详细讲解了类型定义、变量声明、成员访问(.和->操作符)、内存对齐规则(4字节对齐)、传参方式(值传递和地址传递),并通过学生信息管理、日期计算等案例演示结构体的实际应用;2.共用体部分阐述了其与结构体的区别(共享内存空间),展示了使用共用体判断内存大小端的方法;3.枚举部分说明了枚举常量的定义语法和自动递增特性,并以工作日限行为例演示了枚举的实际应用。文中通过大量代码示例展示了这些复合数据类型的声明、初始化和操作
2025-07-30 20:14:56
1093
原创 C语言进阶(指针2.函数指针和指针函数,二级指针,指针数组和数组指针,void*指针)
本文介绍了C语言中指针的高级应用,主要包括指针函数与函数指针、二级指针、指针数组与数组指针以及void指针四部分内容。指针函数是返回指针的函数,需避免返回局部变量地址;函数指针指向函数,可实现回调功能。二级指针用于修改外部指针变量或处理指针数组。指针数组是元素为指针的数组,适合处理字符串;数组指针指向整个数组。void指针可存储任意类型地址,常用于通用参数传递。文中通过字符串处理、排序算法等示例代码详细演示了各类指针的使用方法。
2025-07-29 14:15:50
846
原创 C语言进阶(指针2.指针和数组的关系,const指针)
本文探讨了C语言中指针与数组的关系及应用。主要内容包括:1)数组名本质是指向首元素的指针常量,可通过指针运算访问数组元素(a[n]等价于*(a+n));2)数组作为函数参数传递的三种形式(带大小、不带大小、指针形式),并以冒泡排序为例说明;3)字符串处理应用,包括数字字符串转换和字符统计;4)const指针的四种形式及其限制(如不能修改指向值或指针本身)。文中通过多个代码示例(如数组遍历、字符串转换、字符统计等)具体展示了指针操作数组的技术要点和使用场景。
2025-07-27 23:59:19
505
原创 C语言进阶(指针1.指针的基本概念,操作,以及参数传递)
本文介绍了C语言中指针的核心概念与应用。主要内容包括:1)指针特点:简化代码、直接访问内存、硬件操作和间接访问;2)指针概念:地址与指针的区别,指针变量在64位系统中占8字节;3)关键运算符&和*的使用及类型转换;4)指针变量的定义、初始化和野指针/空指针问题;5)指针算术运算的偏移规则;6)指针作为函数参数实现地址传递;7)通过日期计算案例展示指针在函数间传递的应用,包括闰年判断、天数计算等。文中包含多个代码示例,如数字位求和、最大公约数计算等,帮助理解指针操作。
2025-07-26 13:18:54
1196
原创 C语言进阶(函数)
本文主要介绍了C语言中函数的相关概念和应用。内容涵盖:1)函数的作用与优势,如代码模块化和可读性提升;2)变量的作用域(局部/全局)和生存周期;3)内存分配机制(栈区、数据区等);4)函数定义、调用、嵌套和递归的实现方法;5)参数传递方式(值传递、数组传递);6)常用字符串处理函数的自定义实现(如strlen、strcpy等)。通过多个示例(如阶乘计算、斐波那契数列、排序算法等)详细演示了函数的实际应用,帮助理解函数在程序模块化设计中的核心作用。
2025-07-24 18:57:26
1002
原创 C语言进阶(数组3.二维字符串数组)
本文介绍了二维字符串数组的基本操作与应用。首先说明了二维字符串数组的定义方式,强调下标必须为常量。在访问方式上,可以通过行下标获取整行字符串,或通过行列下标访问特定字符。文章提供了终端接收字符串并打印的示例代码,并重点讲解了字符串排序的特殊处理:使用strcpy进行赋值,strcmp进行比较。演示了冒泡排序和选择排序两种方法对字符串进行排序的实现。最后给出一个字符串统计练习,统计输入字符串中的大小写字母、数字和空格的数量。这些内容涵盖了二维字符串数组的定义、访问、输入输出以及排序等核心操作。
2025-07-23 07:00:00
1193
原创 C语言进阶(数组2.二维整型数组,一维字符型数组)
本文介绍了二维整型数组和一维字符型数组的基本操作。二维数组部分包括定义(行列数必须为常量)、元素访问(行列可为变量)、初始化(全部/局部/默认)及终端输入输出方法。字符数组部分重点讲解了字符串处理:定义时要预留'\0'空间;printf和puts的打印区别;多种初始化方式;使用scanf/gets输入字符串;strlen与sizeof的区别;字符串拷贝、拼接、比较的实现方法及注意事项。最后提供了两个典型练习:字符串倒置和ASCII码排序,分别通过交换元素和冒泡排序实现。
2025-07-22 10:54:38
1170
原创 C语言进阶(数组1.一维整型数组)
本文介绍了数组的基本概念和操作。数组是由相同类型元素组成的有限集合,可分为一维、二维和多维数组。重点讲解了一维整型数组的定义、元素访问和初始化方法,强调定义时元素个数必须是常量表达式。详细说明了数组的存储方式(连续有序空间)和计算方法,并提供了从终端接收数组元素的示例。此外,还介绍了常见数组操作,包括求最值、倒置元素、冒泡排序和选择排序的实现方法,并给出了完整的代码示例。最后指出自定义输入时数组长度的计算方法与常规情况不同。
2025-07-19 19:13:35
403
原创 C语言基础知识(流程控制)
本文介绍了C语言中的三种程序控制结构及其应用。主要内容包括:1)顺序、分支和循环三种基本结构;2)分支结构中的if语句和switch语句,包括单分支、多分支和嵌套形式;3)循环结构中的while、do-while、for循环及goto语句,重点讲解了for循环的双层嵌套应用;4)辅助控制语句break、continue和return的作用。文中通过多个代码示例演示了这些结构的实际应用,如奇偶判断、字母转换、九九乘法表等,并强调了编程中的注意事项,如避免嵌套过多、正确使用break等。
2025-07-19 11:55:18
777
原创 C语言基础知识(输入和输出函数)
本文介绍了C语言中输入输出函数的基本用法。主要包括字符输入输出函数getchar/putchar,格式化输入输出函数scanf/printf,以及字符串输入输出函数gets/puts。重点说明了printf的输出控制符(%d、%f等)和格式控制(域宽、精度等),以及scanf的输入控制符使用注意事项(需加&符号、不读取空格回车等)。同时解释了特殊字符(\n、\t等)和数据类型转换(如有符号与无符号打印的区别)的原理。这些函数都需要包含头文件才能使用,是C语言基础而重要的内容。
2025-07-17 18:24:16
893
原创 C语言基础知识(表达式及运算符)
本文主要介绍了C语言中的表达式和运算符相关内容。在表达式部分,说明了表达式的定义、特点及混合运算时不同类型数据的转换规则,包括精度转换、自动类型提升等。运算符部分详细讲解了算术运算符(+、-、*、/、%、++、--)的使用特点,赋值运算符(=、+=、-=等)的类型转换规则,以及逗号运算符和sizeof运算符的用法。最后简要提及了运算符的优先级规则,括号优先级最高,其次是单目、双目等运算符,为后续学习输入输出函数打下基础。
2025-07-17 00:45:45
684
原创 C语言基础知识(数据类型,常量以及变量)
本文介绍了利用AI模型模拟Linux操作系统的可行性,测试了多种国内外AI模型的执行效果。然后重点讲解了C语言基础知识,包括程序运行原理、计算机单位、进制转换等。详细分析了C语言的数据类型,包括整数类型、字符类型、浮点数类型等的存储方式、值域范围和转换规则。最后介绍了常量和变量的定义与使用,包括各类常量表示法和变量命名规范。文章内容系统全面,适合C语言初学者学习基础知识。
2025-07-15 19:04:40
1105
原创 Linux系统命令以及简单的C语言代码开发
心得:Linux系统操作感觉太简陋了,windows只用鼠标就能完成的操作Linux系统还要一个一个用命令执行😂c语言开发也不如devc++高度集成来的方便,初学还是不太习惯,加油明天继续学点。暑假在家闲着,试着学习嵌入式😤今天熟悉了Linux的各个系统命令和简单的Linux系统下的c语言开发🤓感觉挺有趣的。ls//查看当前目录下所有文件(白色文本文件,蓝色目录文件)ls -a//查看当前目录下包括隐藏文件(.开头)的所有文件。gcc 文件名 -o 新的文件名//自定义可执行文件的文件名。
2025-07-14 20:41:44
570
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人