
APUE
文章平均质量分 90
Shemesz
这个作者很懒,什么都没留下…
展开
-
Linux基础(5)— Shell
Shell基础1.Shell概述2.Shell脚本的执行方式(1)echo输出命令(2)编写第一个脚本(3)执行方式3.Bash的基本功能1.Shell概述 Shell是一个命令解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序,用户可以用Shell来启动、挂起、停止以及编程。2.Shell脚本的执行方式(1)echo输出命令在这里,我们首先学习一个最简单的Shell命令来进行脚本的编写命令格式:echo 选项 输出内容 -e //支持反斜杠红纸的转原创 2021-08-10 12:46:57 · 482 阅读 · 0 评论 -
Linux基础(4)— vim
命令差不多总结完了,也顺便总结一下Linux程序员必备的vim操作技能吧!原创 2021-08-09 22:53:02 · 329 阅读 · 0 评论 -
Linux基础(3)
!!!原创 2021-08-08 23:56:06 · 619 阅读 · 0 评论 -
Linux基础(2)
Linux下一切皆文件,而操作任何文件就必须使用到命令,下面我们就来介绍一下lLinux的基本命令原创 2021-08-06 23:06:22 · 437 阅读 · 0 评论 -
Linux基础(1)
Linux学了快一年,快要参加秋招了,也要重新准备一下Linux所学的知识了,对自己所学的Linux知识整理出一个框架体系,也正好借此机会好好重新复习以下Linux!原创 2021-08-05 23:49:16 · 177 阅读 · 0 评论 -
线程同步——条件变量
条件变量一、条件变量介绍二、运行代码三级目录一、条件变量介绍 条件变量是线程可用的一种同步机制。 条件变量给多个线程提供了一个回合的场所,条件变量与互斥量一起使用,允许线程以无竞争的方式等待特定的条件发生。 条件本身是由互斥量保护的。 线程在改变条件状态之前必须先锁住互斥量。其他线程在获得互斥量之前都不会察觉到这种改变,因为互斥量必须在锁定以后才能计算体条件。 在使用条件变量之前,必须进行初始化。 由pthread_cond_t数据类型表示的条件变量可以通过两种方式初始化,可以把常量PTHRE原创 2021-07-20 00:10:36 · 1019 阅读 · 0 评论 -
字符分割函数strtok
分割函数strtok一、strtok()基本使用和介绍二、strtok()注意事项三、strtok()函数源码一、strtok()基本使用和介绍1、函数原型char *strtok(char *str, const char *delim)2、参数str—要被分解的字符串delim—用作分隔符的字符(可以是一个,也可以是集合)3、返回值该函数返回被分解的第一个子字符串,若无可检索的字符串,则返回空指针4、实例代码#include <string.h>#includ原创 2021-05-12 16:19:55 · 33449 阅读 · 9 评论 -
Makefile的使用
Makefile一、Makefile介绍二、 Makefile的通用结构三、写Makefile一、Makefile介绍慢慢项目代码成型以后,老师又交给我们Makefile的使用,才发现多好用。一个项目文件中的源文件不计其数,按类型、功能模块分别存放在若干个目录当中,而你要运行的时候,总不能一个一个打开去运行命令,而makefile制定了一系列规则,那些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至需要一些更复杂的功能操作,都可以通过makefile去执行,他就像一个Shell脚本一样,其原创 2021-04-15 15:58:27 · 486 阅读 · 0 评论 -
Linux下静态库与动态库
一、库的介绍在windows和Linux下都存在着大量的库,库是什么呢?本质上来说,库是一种可执行代码的二进制文件,可以被操作系统载入内存执行。我们通常将一些通用函数写成函数库,所以库是别人写好的,现有的、成熟的,可以复用的代码。我们显示写代码不可能每一份代码都从头编写,但当我们拥有库时,我们就直接可以将我们所需要的文件链接进我们的程序中,可以节省大量的时间,提高效率。Linux下主要有两种库:静态库和动态库。二、静态库静态库的文件名命名方式是“libxxx.a”,库名前面加“lib”,window原创 2021-04-13 21:51:21 · 588 阅读 · 0 评论 -
iniparser库介绍应用
iniparser一、 iniparser库介绍二、一、 iniparser库介绍最近写实验代码,经常要ini解析配置文件,到底什么是ini配置文件?iniparser是一个C语言库,是针对INI文件的开源解析器ini文件是一些系统或者软件的配置文件iniparser库中的API函数可以对ini文件(配置文件)进行解析、配置、删除等操作下载iniparser库:Github:https://github.com/ndevilla/iniparser下载解压之后切换到iniparser-ma原创 2021-04-06 21:47:27 · 728 阅读 · 0 评论 -
多线程编程与锁
目录1 多线程编写的漏洞2 解决漏洞方法——锁(1)阻塞锁(2)非阻塞锁(3)自旋锁(4)互斥锁(5)死锁1 多线程编写的漏洞上一篇博客中写介绍了多线程,并且写了一个多线程代码,如下: 1 #include <stdio.h> 2 #include <string.h> 3 #include <errno.h> 4 #include <unistd.h> 5 #include <pthread.h> 6 #include原创 2021-03-17 21:38:55 · 211 阅读 · 0 评论 -
多线程编程
多线程编程一、 线程概念(1)什么是线程(2) 线程共享资源(3)线程非共享资源(4)线程优、缺点(5)线程与进程比较二、 线程相关函数和属性(1)主线程和子线程(2)线程相关函数(3)线程的创建与属性(1)pthread_create()(2)pthread_attr_t(3) pthread_attr_init()(4)pthread_attr_setdetachstate()(5)pthread_attr_setschedpolicy()(6)pthread_attr_setschedparam()(原创 2021-03-17 17:13:31 · 887 阅读 · 0 评论 -
多进程编程
目录1 服务器并发访问的问题服务器按照处理方式可以分为迭代服务器和并发服务器两类。上一篇用C写的Socket客户端服务器间通信,服务器每次只能处理一个客户的请求,它实现简单但效率很低,通常这类服务器被称为迭代服务器;然而在实际生活中,不可能让一个服务器只为一个客户服务,而需要其具有同时处理多个客户请求的能力,这种同时可以处理多个用户请求的服务器叫做并发服务器。Linux下有三种实现并发服务器的方式:多进程并发服务器、多线程并发服务器、IO复用,今天就是多进程并发服务器的实现。2 多进程编程(1)什原创 2021-03-10 19:08:31 · 1599 阅读 · 0 评论 -
socket编程入门
socket编程1 socket通信2 客户端程序socket()connect()1 socket通信想要了解socket就必须要知道计算机网络通信的TCP/IP协议族,首先TCP/IP协议族包括:运输层、网络层、链路层,而socket的位置如图所示,Socket是应用层与TCP/IP协议族通信的中间软件抽象层Socket即为套接字,应用程序要为网络通信而创建一个套接字(socket)时,操作系统就返回一个值作为描述符来识别这个套接字,然后应用程序以该描述符作为传递参数,通过调用相应函数(如read原创 2021-02-23 20:17:39 · 569 阅读 · 0 评论 -
树莓派——DS18B20获取温度
树莓派DS18B20获取温度1 项目背景介绍1.1项目想法1.2流程描述2 项目代码介绍2.1文件I/O的API函数open()read()close()opendir()readdir()closedir()2.2项目代码1 项目背景介绍1.1项目想法DS18B20是常用的数字温度传感器,其输出的是数字信号,具有体积小,硬件开销低,抗干扰能力强,精度高的特点,刚好拿实验室的树莓派来做一下获取温度的小项目。当树莓派配置好DS18B20数字温度传感器后,该温度信息通常保存在下面路径中,我们只需要读取文原创 2021-01-31 19:32:29 · 1015 阅读 · 0 评论