testsocket.c

来自「Linux环境下常用功能的实现」· C语言 代码 · 共 43 行

C
43
字号
#include "../cutil.h"int main(int argc, char **argv){	int nPort = 5433;	char szBuffer[1024];	int nListenFd;	int nSocketFd;	if(fork() > 0)	{		if((nListenFd = cutil_socket_new(NULL, nPort, 1)) < 0)		{			fprintf(stderr, "create listen socket error\n");			return -1;		}		fprintf(stderr, "Parent %d\n", getpid());		nSocketFd = accept(nListenFd, NULL, NULL);		if(nSocketFd < 0)		{			fprintf(stderr, "accept client connect error %s\n", strerror(errno));			return -1;		}		sprintf(szBuffer, "Hello %d", getpid());		cutil_socket_put_line(nSocketFd, szBuffer, 0);		return 0;	}	else	{		fprintf(stderr, "Client %d\n", getpid());		sleep(5);		if((nSocketFd = cutil_socket_new("127.0.0.1", nPort, 0)) < 0)		{			fprintf(stderr, "connect to server error\n");			return -1;		}		memset(szBuffer, 0 , sizeof(szBuffer));		cutil_socket_get_line(nSocketFd, szBuffer, sizeof(szBuffer));		fprintf(stderr, "Client Get %s\n", szBuffer);		return 0;	}}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?