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

📄 inv5.c

📁 <B>Digital的Unix操作系统VAX 4.2源码</B>
💻 C
字号:
#ifndef lintstatic char *sccsid = "@(#)inv5.c	4.1	ULTRIX	7/17/90";/* Original Id: "@(#)inv5.c	4.2 (Berkeley) 1/9/85" */#endif#include <stdio.h>recopy (ft, fb, fa, nhash)FILE *ft, *fb, *fa;{	/* copy fb (old hash items/pointers) to ft (new ones) */	int n, i, iflong;	long getl();	int getw();	int *hpt_s;	int (*getfun)();	long *hpt_l;	long k, lp;	if (fa==NULL)	{		err("No old pointers",0);		return;	}	fread(&n, sizeof(n), 1, fa);	fread(&iflong, sizeof(iflong), 1, fa);	if (iflong)	{		hpt_l = (long *) calloc(sizeof(*hpt_l), n+1);		n =fread(hpt_l, sizeof(*hpt_l), n, fa);	}	else	{		hpt_s =  (int *) calloc(sizeof(*hpt_s), n+1);		n =fread(hpt_s, sizeof(*hpt_s), n, fa);	}	if (n!= nhash)		fprintf(stderr, "Changing hash value to old %d\n",n);	fclose(fa);	if (iflong)		getfun = getl;	else		getfun = getw;	for(i=0; i<n; i++)	{		if (iflong)			lp = hpt_l[i];		else			lp = hpt_s[i];		fseek(fb, lp, 0);		while ( (k= (*getfun)(fb) ) != -1)			fprintf(ft, "%04d %06ld\n",i,k);	}	fclose(fb);	return(n);}

⌨️ 快捷键说明

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