![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C语言
文章平均质量分 91
Simply myself
这个作者很懒,什么都没留下…
展开
-
【C语言】Linux Socket epoll多路复用
文章目录前言一、epoll 多路复用是什么?二、epoll 函数解析1、epoll_create() 函数2、epoll_ctl() 函数3、epoll_wait() 函数三、具体代码四、运行效果总结前言前面谈完 poll 多路复用,这篇文章我们来聊聊 epoll 多路复用在 Linux 没有实现 epoll 事件驱动机制之前,我们一般选择用 select 或者 poll 等 IO 多路复用的方法来实现并发服务程序。自 Linux 2.6 内核正式引入 epoll 以来,epoll 已经成为了目前原创 2021-07-28 22:59:00 · 573 阅读 · 0 评论 -
【C语言】Linux Socket poll多路复用
文章目录前言一、poll 多路复用是什么?poll() 函数二、具体代码三、运行效果总结前言前面谈完 select 多路复用,这篇文章我们来聊聊 poll 多路复用一、poll 多路复用是什么?select() 和 poll() 系统调用的本质一样,前者在 BSD UNIX 中引入的,后者在 System V 中引入的。poll() 的机制与 select() 类似,与 select() 在本质上没有多大差别,管理多个描述符也是进行轮询,根据描述符的状态进行处理,但是 poll() 没有最大文原创 2021-07-28 18:51:43 · 1164 阅读 · 0 评论 -
【C语言】Linux Socket select多路复用
文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import numpy as npimport原创 2021-07-28 17:09:16 · 1236 阅读 · 0 评论 -
【C语言】Linux Socket 多线程处理
文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import numpy as npimport原创 2021-07-26 00:43:51 · 1595 阅读 · 0 评论 -
【C语言】Socket 多进程处理
文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言今天复习了一波多进程提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import numpy as原创 2021-07-22 00:36:53 · 1229 阅读 · 3 评论 -
【C语言】Linux Socket编程 Server Client通信
文章目录前言一、什么是Socket?二、使用步骤1.引入库2.读入数据总结前言学习 Linux Socket 编程,总结一些心得一、什么是Socket?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as snsimport warnin原创 2021-07-21 00:46:20 · 1352 阅读 · 0 评论 -
【C语言】Linux 系统 实现文件复制
前言学完 Linux 文件I/O 系统调用,今天来做一下在 Linux 下使用C语言实现文件拷贝。一、实现过程本次实现的效果是像 cp 命令一样,cp 源文件 目标文件,把源文件拷贝到目标文件中去。1、判断源文件是否存在①、文件拷贝,顾名思义就是将一个文件内容完完全全的复制到另一个文件中去那么首当其冲的就是源文件要存在②、使用 access() 函数来确定文件的访问权限,作为源文件,我们首先要确认该文件存不存在//判断源文件是否存在if(access(argv[1], F_OK.原创 2021-07-18 23:43:53 · 9398 阅读 · 2 评论 -
【C语言】Linux 文件读写
前言Linux 系统中,一切皆文件在 Linux 中,扩展名对 Linux 内核并没有什么实际意义,但是可以用来人为区分不同的文件,方便用户使用。比如 .c 是C文件,.h是头文件一样,虽然在我们眼中有区别,但是在Linux中,他们都属于普通文件类型今天我们来了解一下简单的文件I/O读写操作。一、实现过程1、创建hello.txt文件①、参数1:要打开的文件【可以用绝对路径】②、参数2:flags ,以下三个比较常用-—— O_RDWR:以读写的方式打开文件-—— O.原创 2021-07-18 22:43:38 · 5049 阅读 · 1 评论 -
【C语言】树莓派(Raspberry Pi)+DS18B20 获取当前温度
前言今天搞C语言树莓派读取DS18B20,提示:以下是本篇文章正文内容,下面案例可供参考一、实验准备1、硬件准备硬件数量Raspberry 4B1DS18B20 温度传感器1杜邦线若干2、软件准备在开始之前,要使能树莓派内核的单总线协议驱动模块(1-Wire)具体操作如下sudo raspi-config单总线的接口默认是GPIO 4(BCM),使用默认接口的话可以忽略下面更换引脚的操作若想更换自己选择的端口,则需要在 /boot/c.原创 2021-07-18 18:44:31 · 1185 阅读 · 0 评论 -
【C语言】链表实现队列
前言利用动态数组实现了循环队列,这是静态的队列,缺点是需要预设大小,当队列满时,无法再插入新的数据,只有等队头的数据被取走以后才能往队列放入新的数据。除了动态数组分配实现的队列之外,还可以使用链表实现队列,这种方式动态创建节点需要的内存,当有新的数据节点要加入时,才去申请内存空间,不需要预设大小,整个队列需要的内存空间不需要连续,并且插入删除更容易实现。但是同时也带来存取速度慢的缺点,操作也比数组的方式更加复杂。其实用链表实现队列的方式十分简单,只需要在单链表的基础上,增加一个尾指针即可。因为队列的.原创 2021-07-14 22:01:16 · 4873 阅读 · 0 评论 -
【C语言】动态数组实现循环队列
前言队列是一种“先进先出的数据结构”,可分为静态队列和链式队列。静态队列一般使用数组实现,数组需要预先定义内存大小,为了避免内存浪费,一般使用循环队列。接下来讲述循环队列的原理以及实现代码。循环队列数据结构定义:int front; //指向队列头,指向第一个数据节点int tail; //指向队列尾(并不是指向最后一个数据节点,而是最后一个数据节点后面的位置)int data[];//节点数据,根据实际需要可以是不同的数据类型,但是因为是数组,需要在声明时指定大小一、实现过程1、定义结.原创 2021-07-14 20:15:13 · 638 阅读 · 0 评论 -
【C语言】动态数组堆栈实现
前言堆栈是一种数据结构。堆栈都是一种数据项按序排列的数据结构,只能在一端(称为栈顶(top))对数据项进行插入和删除。在此规则下,连续压栈后再进行出栈,第一个压入栈的数据只能是最后一个出栈,最后一个压入栈的数据是第一个出栈的。也就是我们常说的先进后出(FILO——First-In / Last-Out)堆栈可以使用 “静态数组”、“动态分配的数组”、“动态分配的链式结构” 来实现。本文使用的方案是动态分配的数组。动态数组的优点:长度可以在运行时候才确定以及可以更改原来数组的长度,较为灵活。缺点:原创 2021-07-13 18:14:28 · 595 阅读 · 0 评论 -
【C语言】静态数组堆栈实现
文章目录前言一、实现过程1、stack.h文件2、创建数组3、压栈4、出栈5、获取栈顶数据6、判断栈是否为满7、判断栈是否为空二、完整代码j_stack.c2、测试结果总结前言堆栈是一种数据结构。堆栈都是一种数据项按序排列的数据结构,只能在一端(称为栈顶(top))对数据项进行插入和删除。在此规则下,连续压栈后再进行出栈,第一个压入栈的数据只能是最后一个出栈,最后一个压入栈的数据是第一个出栈的。也就是我们常说的先进后出(FILO——First-In / Last-Out)堆栈可以使用 “静态数组原创 2021-07-13 17:30:16 · 295 阅读 · 0 评论 -
【C语言】链式堆栈实现
文章目录前言一、堆栈是什么二、开始编程1、结构体定义2、压栈3、出栈4、判断栈是否为空5、获取栈顶数据6、 销毁栈三、详细代码**1、stack.h****2、stack.c**总结前言近期在学习C的链表学习了一位博主的博客:详解堆栈的几种实现方法——C语言版对链式堆栈有了一些见解,本文就介绍了有关链式堆栈的基础内容。一、堆栈是什么首先我们来简单聊聊什么是堆栈?堆栈是一种数据结构。堆栈都是一种数据项按序排列的数据结构,只能在一端(称为栈顶(top))对数据项进行插入和删除。在此规则下原创 2021-07-13 11:34:00 · 1222 阅读 · 0 评论