⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 read.c

📁 著名的UNIX网络编程卷1-连网的API-套接字与XTI第二版(中文版)的源代码
💻 C
字号:
#include	"unpipc.h"#include	"data.h"intmain(int argc, char **argv){	XDR		xhandle;	int		i;	char	*buff;	data	in;	ssize_t	n;	buff = Malloc(BUFFSIZE);	/* must be aligned on 4-byte boundary */	n = Read(STDIN_FILENO, buff, BUFFSIZE);	printf("read %ld bytes\n", (long) n);	xdrmem_create(&xhandle, buff, n, XDR_DECODE);	memset(&in, 0, sizeof(in));	if (xdr_data(&xhandle, &in) != TRUE)		err_quit("xdr_data error");	printf("short_arg = %d, long_arg = %ld, vstring_arg = '%s'\n",		   in.short_arg, in.long_arg, in.vstring_arg);	printf("fopaque[] = %d, %d, %d\n",		   in.fopaque_arg[0], in.fopaque_arg[1], in.fopaque_arg[2]);	printf("vopaque<> =");	for (i = 0; i < in.vopaque_arg.vopaque_arg_len; i++)		printf(" %d", in.vopaque_arg.vopaque_arg_val[i]);	printf("\n");	printf("fshort_arg[] = %d, %d, %d, %d\n", in.fshort_arg[0],		   in.fshort_arg[1], in.fshort_arg[2], in.fshort_arg[3]);	printf("vlong<> =");	for (i = 0; i < in.vlong_arg.vlong_arg_len; i++)		printf(" %ld", in.vlong_arg.vlong_arg_val[i]);	printf("\n");	switch (in.uarg.result) {	case RESULT_INT:		printf("uarg (int) = %d\n", in.uarg.union_arg_u.intval);		break;	case RESULT_DOUBLE:		printf("uarg (double) = %g\n", in.uarg.union_arg_u.doubleval);		break;	default:		printf("uarg (void)\n");		break;	}	xdr_free(xdr_data, (char *) &in);	exit(0);}

⌨️ 快捷键说明

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