linux下C语言开发
simple_lxs
这个作者很懒,什么都没留下…
展开
-
Linux中文件描述符的初始化
文件描述符是一个非负整数,其中0代表标准输入,1代表标准输出,2代表标准出错。如果系统此时打开一个文件,则文件描述符为3(POSIX标准规定,每次打开文件时(包括socket),必须使用当前进程中最小可用的文件描述符号码)所以文件描述符在初始化时应该赋值为负数(比如-1),如果赋值为0,则占用了标准输入。原文...转载 2021-08-19 09:23:10 · 201 阅读 · 0 评论 -
为什么ET模式需要将文件设置为非阻塞的原因
阻塞IO:当你去读一个阻塞的文件描述符时,如果在该文件描述符上没有数据可读,那么它会一直阻塞(通俗一点就是一直卡在调用函数那里),直到有数据可读。当你去写一个阻塞的文件描述符时,如果在该文件描述符上没有空间(通常是缓冲区)可写,那么它会一直阻塞,直到有空间可写。以上的读和写我们统一指在某个文件描述符进行的操作,不单单指真正的读数据,写数据,还包括接收连接accept(),发起连接connect()等操作…非阻塞IO:当你去读写一个非阻塞的文件描述符时,不管可不可以读写,它都会立即返回,返回成功说明读写操作转载 2021-06-08 10:54:10 · 582 阅读 · 0 评论 -
Linux程序设计-getopt处理命令行参数
Linux中,对于多数程序,都能够接受命令行选项,进行调用交互。具有可靠的复杂命令行参数处理机制,会使得程序健壮性更强,更好用。而getopt()是一个专门设计来处理命令行参数的库函数,简单而易用。1.命令语法格式命令的格式:COMMAND OPTIONS ARGUMENT命令 选项 参数COMMAND:本次想要执行的操作,想要发起的进程内部命令:也叫内建命令或内置命令,直接内建与shell的命令外部命令:通过安装某些应用程序而安装的命令OPTIONS:修正命令的执行效果的组成部原创 2020-07-11 10:41:31 · 295 阅读 · 0 评论 -
问题记录-内存错误:free(): invalid next size (fast): 0x0000000001bd2e10 ***
在项目开发中,原创 2020-06-08 11:46:51 · 2307 阅读 · 1 评论