- 博客(56)
- 资源 (1)
- 问答 (1)
- 收藏
- 关注
原创 代码进化论:C语言核心技能指针深度通关指南
数据类型 **指针变量名;保存一级指针的地址的 多级指针一定是指向上一级指针的,所以偏移量是固定的, 64位操作系统偏移量8Byte,32位操作系统偏移量4Byte。本质是一个数组,保存的是多个指针。
2025-02-07 19:36:52
424
原创 C语言指针的精通之路------101
数据类型 *指针变量名;*前面如果有数据类型,表示定义指针变量int a,b,c;//使用指针变量保存a的地址//因为指针变量p的值就是内存地址,所以使用%p格式符打印return 0;
2025-02-06 19:55:22
1232
原创 C语言------数组从入门到精通
使用类型名 数组名[数组长度];定义数组。// 示例:int arr[5];数组越界是指访问数组中不存在的元素。例如,对于一个长度为5的数组arr[5],访问arr[5]或arr[-1]都是越界访问。二维数组是一个由行和列组成的矩阵结构,每个元素可以通过两个下标来访问。//定义了一个3行4列的整数二维数组//其中a[i][j](i表示行,0 <= i < 3;j表示列,0 <= j < 4)可以访问特定的元素格式为类型符 数组名[常量表达式1][常量表达式2];,如int b[2][5];
2025-01-28 20:15:54
2407
原创 C语言------指针从入门到精通
1.1指针的类型从语法的角度看,你只要把指针声明语句里的指针名字去掉,剩下的部分就是这个指针的类型。这是指针本身所具有的类型。让我们看看例一中各//指针的类型是 int*//指针的类型是 char*//指针的类型是 int**//指针的类型是 int(*)[3]//指针的类型是 int*(*)[4]1.2指针所指向的类型当你通过指针来访问指针所指向的内存区时,指针所指向的类型决定了编译器将把那片内存区里的内容当做什么来看待。从语法上看,你只须把指针声明语句中的指针名字和名字左边的指针声。
2025-01-26 15:20:23
1727
原创 C语言请写出以下几个数据的类型整数 aa的地址存放a的数组b存放a的地址的数组cb的地址c的地址指向printf函数的指针d存放d的数组
【代码】C语言请写出以下几个数据的类型整数 aa的地址存放a的数组b存放a的地址的数组cb的地址c的地址指向printf函数的指针d存放d的数组。
2025-01-25 03:42:32
102
原创 C语言I/O请用递归实现计算 :1 + 1/3 - 1/5 + 1/7 - 1/9 + .... 1/n 的值,n通过键盘输入
【代码】【无标题】
2025-01-25 03:34:22
178
原创 C语言I/O请写一个双向链表的快速排序函数
函数:实现快速排序的分区操作,选择最后一个节点作为基准点,将链表分为两部分,左边的节点数据小于等于基准点,右边的节点数据大于基准点。函数:创建一个双向链表,调用快速排序函数对链表进行排序,并打印排序前后的链表内容,最后释放链表内存。结构体:定义了双向链表的节点,包含数据域。函数:递归地对链表进行快速排序。函数:用于交换两个节点的数据。函数:获取链表的最后一个节点。函数:用于创建新的节点。函数:打印链表的内容。
2025-01-25 03:23:53
112
原创 C语言I/O请使用条件变量实现2生产者2消费者模型,注意1个生产者在生产的时候,另外一个生产者不能生产
函数:创建2个生产者线程和2个消费者线程,并等待它们完成。函数:消费者线程的入口函数,从缓冲区取出物品并消费。:一个固定大小的缓冲区,用于存储生产者生产的物品。函数:生产者线程的入口函数,生产物品并放入缓冲区。:条件变量,用于通知生产者缓冲区未满。:条件变量,用于通知消费者缓冲区非空。:互斥锁,用于保护对缓冲区的访问。:缓冲区中当前的物品数量。:生产者放置物品的位置。:消费者取出物品的位置。
2025-01-25 03:15:19
158
原创 C语言I/O请使用互斥锁和信号量分别实现5个线程之间的同步
使用互斥锁: pthread_mutex_t mutex;使用信号量: sem_t semaphore;:等待信号量,如果信号量的值大于0,则减1并继续执行;:释放信号量,信号量的值加1,唤醒等待的线程。
2025-01-25 03:02:38
240
原创 C语言I/O请使用read 和 write 实现链表保存到文件,以及从文件加载数据到链表中的功能
(2)创建和操作链表:实现链表的基本操作(如插入、删除等)。(4)从文件加载链表:从文件读取数据并重建链表。(3)保存链表到文件:将链表数据写入文件。(1)定义链表结构:定义链表节点结构体。
2025-01-25 02:39:12
177
原创 C语言I/0请使用dup2 + fgets + printf 实现文件拷贝功能
将目标文件的文件描述符重定向到标准输出。(5)关闭文件:关闭文件并恢复标准输出流。(3)重定向文件描述符:使用。(1)备份标准输出流:使用。(4)读取和写入数据:使用。从源文件读取数据,使用。(2)打开文件:使用。将数据写入目标文件。
2025-01-25 02:27:52
201
原创 C语言I/O使用消息队列实现客户端及服务端之间互相聊天
2.服务端代码server.c将创建消息队列,接收客户端的消息,并向客户端发送消息。1.定义一个消息结构体msg_struct.h,用于在消息队列中传递消息。将连接到消息队列,向服务端发送消息,并接收服务端的消息。函数在两个终端之间发送和接收消息。消息队列的键值是通过。创建了一个消息队列,并使用。函数生成的,确保了键值的唯一性。
2025-01-23 02:02:21
184
原创 C语言基础------练习1
2.百钱买百鸡问题,一百元钱去买鸡,公鸡5元,母鸡3元,三只小鸡1元,问买一百只鸡,有多少种买法。1.输出3-100以内的完美数,(完美数:因子和(因子不包含自身)=数本身)
2025-01-22 17:29:00
168
原创 C语言基础------练习
2.定义一个数组,要求长度使用宏定义,终端输入数组中的数据,实现冒泡排序。a.//添加标志位,标志位要求,终端输入,如果输入1,升序,输入0降序。1.求二维数组中元素的最大值,并输出行标和列标。
2025-01-22 17:06:53
1056
原创 基于Linux系统指令使用详细解析
远程登录linux系统 ssh root@ 192.168 .202 .136 # 断开连接 exit # 重启系统 reboot 或者 shutdown - h now # 关机指令 shutdown #默认30秒之后才会关机 # 立即关机 shutdown - h now # 十分钟之后关机长度 shutdown - h 10/bin #存放二进制的可执行文件,也就是命令,其实每个命令基本都是一个可执行代码文件,特别重要,不能删除!
2025-01-16 17:35:44
1370
原创 C语言基础which嵌套执行步骤详细解析
13.j(3)<=line(3)-i(1) 条件判断:不满足。4.j(2)<=line(3)-i(1) 条件判断:满足。7.j(3)<=line(3)-i(1) 条件判断:满足。4.j(2)<=line(5)-i(2) 条件判断:满足。7.j(3)<=line(5)-i(2) 条件判断:满足。4.j(2)<=line(5)-i(3) 条件判断:满足。1.j(1)<=line(3)-i(1) 条件判断:满足。1.j(1)<=line(3)-i(2) 条件判断:满足。
2025-01-16 16:37:45
960
原创 C语言基础------循环控制练习题
8.求1000-10000中的所有四叶玫瑰数(个位^4+十位^4+百位^4+千位^4==数本身)7.求3-100中的所有质数(只能被1和数本身整除的数)4.使用for循环打印下三角九九乘法表。5.使用for循环打印上三角九九乘法表。2.使用for循环打印直角三角形。3.使用for循环打印金字塔。
2025-01-15 19:56:15
118
原创 浅谈Linux C基础20---1----linux I/O fread 和 fwrite 函数完成打印德国国旗
【代码】浅谈Linux C基础20---1----linux I/O fread 和 fwrite 函数完成打印德国国旗。
2025-01-08 19:49:46
196
原创 浅谈Linux C基础20----linux I/Ofread 和 fwrite 函数
【代码】浅谈Linux C基础20----linux I/Ofread 和 fwrite 函数。
2025-01-08 18:55:08
174
原创 浅谈Linux C基础19----linux I/O
appendStudent函数用于将新学生节点添加到链表末尾。createStudent函数用于创建新的学生节点。setMath函数用于更新文件中所有学生的数学成绩。load函数从文件中读取学生信息并创建新的链表。save函数将链表中的学生信息写入文件。show函数用于显示链表中的学生信息。
2025-01-07 18:51:19
359
原创 浅谈Linux C基础18-1----linux shell 脚本图形及C练习
1.使用shell脚本输出动态图形2.使用C输出三角形3.使用C数组逆置
2025-01-03 01:30:51
95
原创 浅谈Linux C基础18----linux shell 函数
通过赋值的方式创建数组:array=(10 20 30 40 50 60)c.函数里对数组应用冒泡排序。命令来获取指定用户名对应的组识别码(GID)实现逻辑:通过创建一个名为。
2025-01-02 19:38:47
251
原创 浅谈Linux C基础17----linux shell算术运算分支结构
STRING<==>-n STRING #判断字符串非空。-c FILE #文件存在并且是一个字符设备文件。-b FILE #文件存在并且是一个块设备文件。-h FILE #文件存在并且是一个软链接文件。-L FILE #文件存在并且是一个软链接文件。-f FILE #文件存在并且是一个普通文件。-p FILE #文件存在并且是一个管道文件。-S FILE #文件存在并且为套接字文件。-x FILE #文件存在并且由可执行权限。
2025-01-02 18:14:34
390
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人