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

📄 xdrtest.c

📁 spice中支持多层次元件模型仿真的可单独运行的插件源码
💻 C
字号:
/* $Header: /home/harrison/c/tcgmsg/ipcv4.0/RCS/xdrtest.c,v 1.1 91/12/06 17:28:01 harrison Exp Locker: harrison $ */#include <stdio.h>#include <rpc/types.h>#include <rpc/xdr.h>#if defined(ULTRIX) || defined(SGI)extern void *malloc();#elseextern char *malloc();#endifstatic char *xdrbuf;static XDR xdrs;int main(argc, argv)   int argc;   char **argv;{   long data[4];   long len;   long *temp=data;   if (argc != 2)     return 1;   xdrbuf = malloc(4096);   if (strcmp(argv[1], "encode") == 0) {    xdrmem_create(&xdrs, xdrbuf, 4096, XDR_ENCODE);    (void) fprintf(stderr," encode xdr_setpos=%d\n",                   xdr_setpos(&xdrs, (u_int) 0));    (void) scanf("%ld %ld %ld %ld", data, data+1, data+2, data+3);    (void) fprintf(stderr,"encode Input longs %ld, %ld, %ld, %ld\n",                      data[0], data[1], data[2], data[3]);    len = 4;    (void) fprintf(stderr,"encode xdr_array=%d\n",      xdr_array(&xdrs, (char **) &temp, &len, (u_int) 4096,                (u_int) sizeof(long), xdr_long));    len = 4*4 + 4;    (void) fprintf(stderr,"encode len=%ld\n", len);    (void) fwrite(&len, 4, 1, stdout);    (void) fwrite(xdrbuf, 1, len, stdout);    (void) fprintf(stderr,"encode data written\n");    return 0;   }   else {    xdrmem_create(&xdrs, xdrbuf, 4096, XDR_DECODE);    (void) fprintf(stderr," decode xdr_setpos=%d\n",                   xdr_setpos(&xdrs, (u_int) 0));    (void) fread(&len, 4, 1, stdin);    (void) fprintf(stderr,"decode len=%ld\n", len);    (void) fread(xdrbuf, 1, len, stdin);    (void) fprintf(stderr,"decode data read\n");    (void) fprintf(stderr,"decode xdr_array=%d\n",      xdr_array(&xdrs, (char **) &temp, &len, (u_int) 4096,                (u_int) sizeof(long), xdr_long));    (void) fprintf(stderr,"decode Input longs %ld, %ld, %ld, %ld\n",                      data[0], data[1], data[2], data[3]);    return 0;   }}

⌨️ 快捷键说明

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