函数简介
文章平均质量分 86
常用函数简介
惺忪牛犊子
边学习边记录
展开
-
内核双链表篇:list.h——container_of 宏的理解
若仅知某结构体的数据类型和其中一个成员变量的数据类型和变量名,但想对该结构体变量中其他成员变量进行操作,则需先得到该结构体变量首地址。则可采用宏进行获得。原创 2022-08-07 10:25:28 · 201 阅读 · 0 评论 -
函数简介篇——assert()宏
说明: 本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。 QQ 群 号:513683159 【相互学习】内容来源: C语言 assert 函数 - C语言零基础入门教程、assert() 断言函数,用于在调试过程中捕捉程序错误、C语言解读assert函数目录:一、函数简介二、函数示例一、函数简介 assert()常称为断言函数,大部分编译器下assert()是宏不是函数。 通常用于调试中原创 2022-05-07 13:52:32 · 1066 阅读 · 0 评论 -
函数简介篇——环境变量函数
说明: 本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。 QQ 群 号:513683159 【相互学习】内容来源: 《Unix环境高级编程》、man 手册目录:()——()——()——()——()——()——()—— 1.函数功能:项目说明函数原型头文件参数说明::返回值成功返回0失败返回-1注意()—— 1.函数功能:项原创 2022-03-18 17:45:13 · 572 阅读 · 0 评论 -
函数简介篇——动态分配函数
说明: 本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。 QQ 群 号:513683159 【相互学习】内容来源: 《Unix环境高级编程》、man 手册目录:()——()——()——()——()——()——()——()——()—— 1.函数功能:项目说明函数原型头文件参数说明::返回值成功返回0失败返回-1注意()—— 1.函原创 2022-03-18 15:29:43 · 443 阅读 · 0 评论 -
函数简介篇——错误处理函数:errno值、perror()、streeor()、streeor_r()
说明: 本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。 QQ 群 号:513683159 【相互学习】内容来源: 《Linux系统编程》一、错误处理:errno 1.glibc的支持: glibc对库函数和系统调用的errno提供透明支持。 2.errno值定位错误: 在系统编程中,错误通常通过函数的返回值表示,错误值描述调用函数发生了错误,但不提供原因,可通过特殊的变量原创 2021-11-13 13:01:34 · 1052 阅读 · 0 评论 -
函数简介篇——常用套接字函数
常用套接字函数整理基础套接字函数入门1套接字函数及其理解socket()函数用法详解:创建套接字socket()函数 函数功能:在某协议簇的某协议中创建一个套接字(socket)【创建socket数据结构分配存储空间】。项目说明函数原型extern int socket (int __domain, int __type, int __protocol) __THROW;头文件sys/types.h、sys/socket.h参数说明1.__domain:协议簇,如原创 2021-11-11 18:05:20 · 3835 阅读 · 2 评论 -
函数简介篇——系统调用函数
说明: 本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。 QQ 群 号:513683159 【相互学习】内容来源: man文件描述符 打开/创建的文件均通过文件描述符引用,即文件标识符. 文件描述符为非负整数,范围:0~OPEN_MAX 标准文件描述符(定义于:unistd.h): ①STDIN_FILENO = 0 = 标准输入 ②STDOUT_FILENO = 1原创 2022-03-16 22:54:29 · 909 阅读 · 0 评论 -
函数简介篇——IO多路转接函数:select()/pselect()/poll()/ppoll()
说明: 本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。 QQ 群 号:513683159 【相互学习】内容来源: 《Unix环境高级编程》、man 手册select()函数 1.函数功能:允许程序监视多个文件描述符,直到其中一个或多个文件描述符“准备好”进行某种I/O操作(例如,可能的输入)。如果一个文件描述符可以不阻塞地执行相应的I/O操作(例如,读(2)或足够小的写(2)),则该文件描述原创 2022-04-13 01:27:56 · 288 阅读 · 0 评论 -
函数简介篇——常用IO函数
说明: 本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。 QQ 群 号:513683159 【相互学习】内容来源: 《Linux网络编程》IO函数的比较 read()/write()、readv()/writev()可对所有文件描述符使用。 recv()/send()、recvfrom()/writeto()、recvmsg()/sendmsg()只能操作套接字描述符。 readv()原创 2021-11-12 14:24:49 · 992 阅读 · 0 评论 -
函数简介篇——线程相关函数
说明: 本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。 QQ 群 号:513683159 【相互学习】内容来源: 《Unix环境高级编程》目录:一、线程基本操作函数pthread_equal()——比较线程IDpthread_self()——获取调用线程的IDpthread_create()——创建线程pthread_exit() ——结束线程pthread_join() ——阻塞线程pthre原创 2022-04-18 10:40:04 · 3271 阅读 · 0 评论 -
函数简介篇——进程终止函数
exit()函数 函数功能:执行一些基本的终止进程步骤,然后通知内核终止这个进程。 1️⃣一些基本的终止进程步骤: ①在系统中注册的逆序来调用由atexit()或on_exit()注册的函数。 ②清空所有已打开的标准I/O流 ③删除由tmpfile创建的所有临时文件 2️⃣调用_exit()来让内核处理终止进程的剩余工作(清理进程所创建的、不再用到的任何资源),如: 申请的内存,打开的文件,System V的信号量等。 3️⃣清理完成后,内核摧毁进程,并告知父原创 2021-11-27 16:44:09 · 1227 阅读 · 0 评论 -
函数简介篇——进程同步函数
僵死(zombie)进程 进程只保留最小的概要信息——一些保存着有用信息的内核数据结构。 僵死进程等待父进程查询自己信息,若父进程获取子进程信息,则子进程消失,否则保持僵死状态。等待进程wait()函数 函数功能: ①暂停父进程,使之等待,一旦子进程执行完,等待的父进程会重新执行。 ②若有多个子进程在执行,那么父进程中的wait()在第一个子进程结束时,恢复父进程。项目说明函数原型extern __pid_t wait (int *__stat_loc);头文件原创 2021-11-27 16:43:40 · 690 阅读 · 0 评论 -
函数简介篇——进程的运行:exec()系列函数
说明: 本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。 QQ 群 号:513683159 【相互学习】内容来源: Linux网络编程exec系列函数 可用于新程序的运行。 exec 系列中的系统调用都完成相同的功能,它们把一个新程序装入调用进程的内存空间,来改变调用进程的执行代码,从而形成新进程。 如果 exec 调用成功,调用进程将被覆盖,然后从新程序的入口开始执行。这样就产生了一原创 2021-11-15 17:34:12 · 828 阅读 · 0 评论 -
函数简介篇——进程创建函数:system()
说明: 本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。 QQ 群 号:513683159 【相互学习】内容来源: 《Linux系统编程》、《Linux网络编程》...原创 2021-11-28 10:30:58 · 1350 阅读 · 0 评论 -
函数简介篇——进程创建函数:fork()、vfork()
说明: 本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。 QQ 群 号:513683159 【相互学习】内容来源: Linux网络编程fork ()函数 函数功能:创建一个与原进程(父进程)几乎完全相同的新进程(子进程),子进程将获得父进程数据空间、堆、栈等资源的副本。项目说明函数原型extern __pid_t fork (void) __THROWNL;头文件uni原创 2021-11-14 16:29:10 · 1700 阅读 · 0 评论 -
函数简介篇——获取进程相关ID函数
说明: 本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。 QQ 群 号:513683159 【相互学习】内容来源: 《Linux系统编程》 《Linux网络编程》一、函数介绍 位于:unistd.h/ 获取调用进程的进程ID. /extern __pid_t getpid (void) __THROW;/ 获取调用进程的父进程的进程ID /extern __pid_t原创 2021-11-14 14:27:18 · 2524 阅读 · 0 评论 -
函数简介篇——信号集相关示例
说明: 本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。 QQ 群 号:513683159 【相互学习】内容来源: 《Unix环境高级编程》目录:示例一:1️⃣说明:2️⃣源文件:sigmask.c编译运行及结果示例一:1️⃣说明: 开始5秒,无论多少次Ctrl+\,进程将被阻塞并将处理方式改为默认方式,后再输出字符串。 最后5秒,由于已修改为默认方式故直接终止进程。2️⃣源文件:s原创 2022-03-27 14:49:58 · 158 阅读 · 0 评论 -
函数简介篇——alarm()与pause() 示例
说明: 本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。 QQ 群 号:513683159 【相互学习】内容来源: 《Unix环境高级编程》目录:示例一:1️⃣说明:2️⃣源文件:alarm.c3️⃣编译运行及结果示例二:1️⃣说明:2️⃣源程序:pause.c3️⃣编译运行及结果示例一:1️⃣说明: 20s后一次性输出20个5,后每1s输出5+(数字++) ①每个进程只有一个闹钟。原创 2022-03-25 10:48:50 · 408 阅读 · 0 评论 -
函数简介篇——signal示例(附前后台切换)
说明: 本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。 QQ 群 号:513683159 【相互学习】内容来源: 《Unix环境高级编程》示例一:1️⃣说明: 若捕获用户信号SIGUSR1、SIGUSR2则调用用户创建的信号处理函数sig_usr2️⃣源文件:signal.c#include<stdio.h>#include<unistd.h>#includ原创 2022-03-24 12:39:05 · 1416 阅读 · 0 评论 -
函数简介篇——信号相关函数
说明: 本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。 QQ 群 号:513683159 【相互学习】内容来源: 《Unix环境高级编程》、man 手册目录:信号函数(一)signal()——信号截取【man 2 signal】(二)kill()——将信号发送给进程/进程组【man 2 kill】(三)raise()——允许向进程自身发送信号【man 3 raise】(四)alarm()——向原创 2022-03-25 10:49:54 · 746 阅读 · 0 评论 -
函数简介篇——信号集
说明: 本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。 QQ 群 号:513683159 【相互学习】内容来源: 信号集信号集类型sigset_t相关函数【man sigemptyset】(一)sigemptyset() 1.函数功能:将一个信号集的内容清空项目说明函数原型int sigemptyset(sigset_t *set);头文件signal.h原创 2022-03-27 14:38:00 · 587 阅读 · 0 评论