linux系统编程
deng942861
这个作者很懒,什么都没留下…
展开
-
snprintf的使用方法和陷阱
snprintf()用于往buf中写入格式化的字符串。想要正确地使用snprintf,需要对它的入参size和返回值的含义有准确的理解。否则会踩入深坑而不自知。1.语法说明函数声明:int snprintf(char *str, size_t size, const char *format, ...);参数说明:size:snprintf往buf中最多写入size个字节。注意,字...原创 2019-10-17 10:23:43 · 3393 阅读 · 0 评论 -
linux共享内存的使用方法
共享内存是高效的IPC方式。一、创建共享内存: #include <sys/ipc.h> #include <sys/shm.h> int shmget(key_t key, size_t size, int shmflg); 例如: int shmid = shmget(key, size, 06...原创 2019-10-16 20:41:07 · 1089 阅读 · 1 评论 -
UNIX管道--简介与示例
管道简介术语定义代码示例重点总结简介管道是UNIX系统最古老的IPC形式。它有以下两点局限性:数据只能单向流动只能在具有公共祖先的两个进程间使用。通常是父进程通过系统调用pipe()创建管道,然后fork()出子进程,这两个进程就可以通过管道进行通信了。术语定义管道fd:一条管道有两个套接字,这两个套接字是在调用pipe(fd)创建管道时获取获取的。fd[0]:通过该套接字可...原创 2019-08-31 18:03:00 · 1174 阅读 · 0 评论 -
perror与printf,及其在错误信息打印上的应用
原型printf和perror都可以在屏幕上打印信息。那么这两个有什么区别呢?首先看函数原型: #include <stdio.h> void perror(const char *s); // perror - print a system error message #include <stdio.h> int printf(const char *fo...原创 2019-08-31 18:27:32 · 4577 阅读 · 0 评论