
C语言笔记
文章平均质量分 67
因上努力_果上随缘
学无止境
展开
-
System V IPC
system V ipc介绍原创 2022-09-03 21:33:08 · 431 阅读 · 0 评论 -
内核双向循环链表
1.内核链表介绍在Linux内核中提供了一种通用的双向循环链表来组织数据,这种链表方便使用,且只有一个头文件,方便移植。文件路径:include\linux\list.h。头结点表示:/** * The linkage struct for list nodes. This struct must be part of your * to-be-linked struct. struct list_head is required for both the head of the * list原创 2022-03-05 16:44:25 · 393 阅读 · 0 评论 -
unix socket抽象路径名
在使用AF_UNIX编写本地套接字进行进程间通信的时候,我们需要对struct sockaddr_un中的sun_path域填充一个文件名,在bind的时候会自动创建一个S_IFSOCK类型的文件。如果文件存在就会报错。所以每次创建之前需要先把存在同名的文件删除。但是删除一个文件,可能是别的程序需要的,就会导致很多其他的问题。Linux引入了一种称为抽象路径名的机制,这种方式不会真的创建一个文件,只会在虚拟文件系统中创建一个标识,可以很好的避免名字冲突,当套接字关闭的时候,会自动删除一个路径对应的标识,不原创 2022-01-16 21:20:10 · 1445 阅读 · 0 评论 -
命名UNIX域套接字
在网络上进行通信的时候,我们一般会使用socket进行通信,实际上socket也可以用于同一台主机上的两个进程间的通信,称为本地套接字。本地套接字具有如下的优势:UNIX域套接字仅仅复制数据,不执行协议处理,不需要添加或删除网络报头,无需计算校验和。UNIX域数据报服务是可靠的,不会丢失也不会传递出错。UNIX套接字的地址有struct sockaddr_un结构体表示。#include <sys/un.h>struct sockaddr_un { sa_family_t su原创 2022-01-14 22:18:03 · 520 阅读 · 0 评论 -
C语言的文件操作
在进行数据处理的时候,我们难免会遇到需要对文件中的数据进行处理,这时候就需要对文件进行操作。fopen()FILE *fopen(const char *filename, const char *mode);fiiename参数是需要打开的文件的名称。mode是指以什么的方式打开文件。如只读®, 只写(w)等。返回值: 是一个文件指针, 如果文件不能打开或者错误则会返回NULL。所以...原创 2019-08-06 20:33:17 · 103 阅读 · 0 评论 -
listen()的第二个参数
函数原型:int listen(int sockfd, int backlog);作用数用来监听服务器创建的socket的。第二个参数backlog代表的是相应的socket可以排队的最大连接数。由于客户端client 发起connect()连接时。需要建立TCP三次握手连接需要时间,所有会有一个队列来存储客户端对服务器发起的connect连接。当客户端完成连接后。连接被放到端口的s...原创 2019-08-19 20:23:09 · 2982 阅读 · 0 评论 -
soket编程的函数总结
最近在学习socket编程是看到一篇总结比较好的博客:https://www.cnblogs.com/straight/articles/7660889.html原创 2019-08-19 20:27:28 · 116 阅读 · 0 评论 -
strtok()函数
#include<string.h>char * strtok ( char * str, const char * delimiters );strtok在切割字符串的时候,实际上就是将分割符的字符delimiter替换为’\0’并且返回首地址。str:在第一次被调用的时间str是传入需要被切割字符串的首地址;在后面调用的时间传入NULL。delimiters:表示切割字...原创 2019-08-20 16:25:52 · 167 阅读 · 0 评论