- 博客(14)
- 收藏
- 关注
原创 8.进程间通信:共享内存(shmget)、信号(signal)
4 信号(Signal)信号是Linux系统中用于进程间互相通信或者操作的一种机制,信号可以在任何时候发给某一进程,而无需知道该进程的状态。 如果该进程当前并未处于执行状态,则该信号就有内核保存起来,知道该进程回复执行并传递给它为止。 如果一个信号被进程设置为阻塞,则该信号的传递被延迟,直到其阻塞被取消是才被传递给进程。Linux系统中常用信号:(1)SIGHUP:用户从终端注销,所有已启动进程都将收到该进程。系统缺省状态下对该信号的处理是终止进程。(2)SIGINT:程序终止信号。程序运行
2022-01-27 18:39:28 538
原创 7.进程间通信:无名pipe、有名fifo、消息队列msgget
目录1 进程间通信的定义2 管道2.1 无名管道2.2 FIFO3 信号(Signal)4 消息(Message)队列5 共享内存(share memory)6 信号量(semaphore)7 套接字(socket)1 进程间通信的定义进程间通信就是在不同进程之间传播或交换信息,那么不同进程之间存在着什么双方都可以访问的介质呢?进程的用户空间是互相独立的,一般而言是不能互相访问的,唯一的例外是共享内存区。另外,系统空间是“公共场所”,各进程均可以访问,所以内核也可
2022-01-26 21:53:11 132
原创 3.文件:fopen到feof的使用方法
1.fopen 原型 FILE *fopen(const char *path地址, const char *mode权限); FILE *fdopen(路径/文件名, const char *mode); ./chen.text 例:FILE *fphzk ; fphzk=fo...
2022-01-17 23:47:52 96
原创 2.文件:主参数int main(int argc, char** argv)
C语言参数int main(int argc, char** argv)argv是数组的数组,将字符串放在一个数组中,argv指向这个数组。这就实现了向main中传入文件路径(文件名),利于实现CP命令。 int argcargc 是指命令行输入参数的个数 char** argv argv存储了所有的命令行参数,指向一个数组 例 :hello.exe Shiqi Yu 那么,argc的值是 3,argv[0...
2022-01-17 21:52:39 121
原创 1.文件:open到close的使用方法
1.文件描述符 int fd; 系统中存在的: 0 标准输入 从键盘读取输入 1 标准输出 输出到屏幕 2 标准错误 例子 read(0,buf,size); 从键盘读取size个字节,放在buf中,类似scanf write(1,buf,size); 把 buf 输出到屏幕...
2022-01-16 11:30:57 145
原创 C语言注意事项
个人学习笔记,若有错误请指正1.没有定义的小数,默认为 double,不可取余“%” 。sqrt()返回值也为double类型,不可%。1.5f为float 。正整数为 int。浮点数可以省略前面的整数,保留小数2.标识符 首字符必须为 “字母”“ 下划线”包括:数字,字母,下划线。不可出现符号。3.long int ,short int 可以省略 int ,写成 long(4字节) ,short (2字节)
2022-01-13 16:25:08 890
原创 函数指针:回调函数的底层逻辑
本文是本人个人的学习笔记,错误请指正,谢谢!函数指针:即指向函数的指针 一般函数定义:类型(int float void) + 函数名 + ( 类型 变量 ,int date ); 函数指针定义:类型 (指针) (类型 变量,int date ) //无用变量名可省略,只写类型如:void (*p) ( 类型 变量 ,int date) int (*adk) (类型, int ) 函数指针赋值...
2022-01-13 16:02:46 89
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人