dup函数—三兄弟
关于dup、dup2以及dup3三兄弟。
int dup(int oldfd);
int dup2(int oldfd, int newfd);
int dup3(int oldfd, int newfd, int flags);
功能: 复制一个描述符(创建一个新描述符,它与原有描述符指向相同的文件、管道或网络连接)。
用途: 通常用于将标准输入重定向到一个文件,或者把标准输出重定向到一个网络连接(CGI编程)。
dup
int dup(int oldfd);
该函数在创建新的文件描述符时,将值最小的未被使用的描述符分配给新的描述符。
测试代码
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <string.h>
#include <strings.h>
#include <sys/socket.h>
#include <sys/types.h>
#include <arpa/inet.h>
int main(int argc, char* argv[]) {
if ( argc != 3 ) {
printf("please input correct argument\n");
return 0;
}
char *ip = argv[1