亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? marc.c

?? 匯編大全 中國礦業大學計算機學院 匯編實驗5
?? C
字號:
/* * $Header: marc.c,v 1.2 88/06/06 01:05:02 hyc Locked $ *//*  MARC - Archive merge utility    Version 5.21, created on 04/22/87 at 15:05:10(C) COPYRIGHT 1985-87 by System Enhancement Associates; ALL RIGHTS RESERVED    By:	 Thom Henderson    Description:	 This program is used to "merge" archives.  That is, to move	 files from one archive to another with no data conversion.	 Please refer to the ARC source for a description of archives	 and archive formats.    Instructions:	 Run this program with no arguments for complete instructions.    Language:	 Computer Innovations Optimizing C86*/#include <stdio.h>#include "arc.h"FILE *src;			       /* source archive */char srcname[STRLEN];		       /* source archive name */static char **lst;		       /* files list */static int lnum;		       /* length of files list */main(nargs,arg)			       /* system entry point */int nargs;			       /* number of arguments */char *arg[];			       /* pointers to arguments */{    char *makefnam();		       /* filename fixup routine */    char *calloc();		       /* memory manager */    char *envfind();#if	!MTS    char *arctemp2, *mktemp();		/* temp file stuff */#endif#if	GEMDOS    void exitpause();#endif    int n;			       /* index */    if(nargs<3)    {	 printf("MARC - Archive merger, Version 5.21, created on 04/22/87 at 15:05:10\n");/*	 printf("(C) COPYRIGHT 1985,86,87 by System Enhancement Associates;");	 printf(" ALL RIGHTS RESERVED\n\n");	 printf("Please refer all inquiries to:\n\n");	 printf("	System Enhancement Associates\n");	 printf("	21 New Street, Wayne NJ 07470\n\n");	 printf("You may copy and distribute this program freely,");	 printf(" provided that:\n");	 printf("    1)	  No fee is charged for such copying and");	 printf(" distribution, and\n");	 printf("    2)	  It is distributed ONLY in its original,");	 printf(" unmodified state.\n\n");	 printf("If you like this program, and find it of use, then your");	 printf(" contribution will\n");	 printf("be appreciated.  You may not use this product in a");	 printf(" commercial environment\n");	 printf("or a governmental organization without paying a license");	 printf(" fee of $35.  Site\n");	 printf("licenses and commercial distribution licenses are");	 printf(" available.  A program\n");	 printf("disk and printed documentation are available for $50.\n");	 printf("\nIf you fail to abide by the terms of this license, ");	 printf(" then your conscience\n");	 printf("will haunt you for the rest of your life.\n\n");*/	 printf("Usage: MARC <tgtarc> <srcarc> [<filename> . . .]\n");	 printf("Where: <tgtarc> is the archive to add files to,\n");	 printf("	<srcarc> is the archive to get files from, and\n");	 printf("	<filename> is zero or more file names to get.\n");	 printf("\nAdapted from MSDOS by Howard Chu\n");#if	GEMDOS	 exitpause();#endif	 return 1;    }	/* see where temp files go */#if	!MTS	arctemp = calloc(1, STRLEN);	if (!(arctemp2 = envfind("ARCTEMP")))		arctemp2 = envfind("TMPDIR");	if (arctemp2) {		strcpy(arctemp, arctemp2);		n = strlen(arctemp);		if (arctemp[n - 1] != CUTOFF)			arctemp[n] = CUTOFF;	}#if	!MSDOS	strcat(arctemp, mktemp("AXXXXXX"));#else	strcat(arctemp, "$ARCTEMP");#endif#else	guinfo("SHFSEP	", gotinf);	sepchr[0] = gotinf[0];	guinfo("SCRFCHAR", gotinf);	tmpchr[0] = gotinf[0];	arctemp = "-$$$";	arctemp[0] = tmpchr[0];#endif    makefnam(arg[1],".arc",arcname);   /* fix up archive names */    makefnam(arg[2],".arc",srcname);/*	makefnam(".$$$",arcname,newname);*/	sprintf(newname,"%s.arc",arctemp);#if	!UNIX    upper(arcname); upper(srcname); upper(newname);#endif    arc = fopen(arcname,"rb");	       /* open the archives */    if(!(src=fopen(srcname,"rb")))	 abort("Cannot read source archive %s",srcname);    if(!(new=fopen(newname,"wb")))	 abort("Cannot create new archive %s",newname);    if(!arc)	 printf("Creating new archive %s\n",arcname);    /* get the files list set up */    lnum = nargs-3;		       /* initial length of list */    if(lnum<1)			       /* phoney for default case */    {	 lnum = 1;	 lst = (char **) calloc(1,sizeof(char *));	 lst[0] = "*.*";    }    else			       /* else use filenames given */    {	 lst = (char **) calloc(lnum,sizeof(char *));	 for(n=3; n<nargs; n++)	      lst[n-3] = arg[n];	 for(n=0; n<lnum; )	       /* expand indirect references */	 {    if(*lst[n] == '@')		   expandlst(n);	      else n++;	 }    }    merge(lnum,lst);		       /* merge desired files */    if(arc) fclose(arc);	       /* close the archives */    fclose(src);    fclose(new);    if(arc)			       /* make the switch */	 if(unlink(arcname))	      abort("Unable to delete old copy of %s",arcname);    if(move(newname,arcname))	 abort("Unable to rename %s to %s",newname,arcname);    setstamp(arcname,arcdate,arctime);     /* new arc matches newest file */#if	GEMDOS    exitpause();#endif    return nerrs;}merge(nargs,arg)		       /* merge two archives */int nargs;			       /* number of filename templates */char *arg[];			       /* pointers to names */{    struct heads srch;		       /* source archive header */    struct heads arch;		       /* target archive header */    int gotsrc, gotarc;		       /* archive entry versions (0=end) */    int copy;			       /* true to copy file from source */    int n;			       /* index */    gotsrc = gethdr(src,&srch);	       /* get first source file */    gotarc = gethdr(arc,&arch);	       /* get first target file */    while(gotsrc || gotarc)	       /* while more to merge */    {	 if(strcmp(srch.name,arch.name)>0)	 {    copyfile(arc,&arch,gotarc);	      gotarc = gethdr(arc,&arch);	 }	 else if(strcmp(srch.name,arch.name)<0)	 {    copy = 0;	      for(n=0; n<nargs; n++)	      {	   if(match(srch.name,arg[n]))		   {	copy = 1;			break;		   }	      }	      if(copy)		       /* select source or target */	      {	   printf("Adding file:	  %s\n",srch.name);		   copyfile(src,&srch,gotsrc);	      }	      else fseek(src,srch.size,1);	      gotsrc = gethdr(src,&srch);	 }	 else			       /* duplicate names */	 {    copy = 0;	      {	   if((srch.date>arch.date)		   || (srch.date==arch.date && srch.time>arch.time))		   {	for(n=0; n<nargs; n++)			{    if(match(srch.name,arg[n]))			     {	  copy = 1;				  break;			     }			}		   }	      }	      if(copy)		       /* select source or target */	      {	   printf("Updating file: %s\n",srch.name);		   copyfile(src,&srch,gotsrc);		   gotsrc = gethdr(src,&srch);		   if(gotarc)		   {	fseek(arc,arch.size,1);			gotarc = gethdr(arc,&arch);		   }	      }	      else	      {	   copyfile(arc,&arch,gotarc);		   gotarc = gethdr(arc,&arch);		   if(gotsrc)		   {	fseek(src,srch.size,1);			gotsrc = gethdr(src,&srch);		   }	      }	 }    }    hdrver = 0;			       /* end of archive marker */    writehdr(&arch,new);	       /* mark the end of the archive */}int gethdr(f,hdr)		       /* special read header for merge */FILE *f;			       /* file to read from */struct heads *hdr;		       /* storage for header */{    char *i = hdr->name;	       /* string index */    int n;			       /* index */    for(n=0; n<FNLEN; n++)	       /* fill name field */	 *i++ = 0176;		       /* impossible high value */    *--i = '\0';		       /* properly end the name */    hdrver = 0;			       /* reset header version */    if(readhdr(hdr,f))		       /* use normal reading logic */	 return hdrver;		       /* return the version */    else return 0;		       /* or fake end of archive */}copyfile(f,hdr,ver)		       /* copy a file from an archive */FILE *f;			       /* archive to copy from */struct heads *hdr;		       /* header data for file */int ver;			       /* header version */{    hdrver = ver;		       /* set header version */    writehdr(hdr,new);		       /* write out the header */    filecopy(f,new,hdr->size);	       /* copy over the data */}static expandlst(n)		       /* expand an indirect reference */int n;				       /* number of entry to expand */{    FILE *lf, *fopen();		       /* list file, opener */    char *malloc(), *realloc();	       /* memory managers */    char buf[100];		       /* input buffer */    int x;			       /* index */    char *p = lst[n]+1;		       /* filename pointer */    if(*p)			       /* use name if one was given */    {	 makefnam(p,".CMD",buf);	 upper(buf);	 if(!(lf=fopen(buf,"r")))	      abort("Cannot read list of files in %s",buf);    }    else lf = stdin;		       /* else use standard input */    for(x=n+1; x<lnum; x++)	       /* drop reference from the list */	 lst[x-1] = lst[x];    lnum--;    while(fscanf(lf,"%99s",buf)>0)     /* read in the list */    {	 if(!(lst=(char **) realloc(lst,(lnum+1)*sizeof(char *))))	      abort("too many file references");	 lst[lnum] = malloc(strlen(buf)+1);	 strcpy(lst[lnum],buf);	       /* save the name */	 lnum++;    }    if(lf!=stdin)		       /* avoid closing standard input */	 fclose(lf);}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区二区三区综合| 亚洲综合成人在线视频| 韩国女主播成人在线观看| 精品一区二区三区不卡| 91丨九色丨国产丨porny| 亚洲精品一线二线三线| 国产激情一区二区三区桃花岛亚洲| 不卡的av在线播放| 久久理论电影网| 国产91清纯白嫩初高中在线观看| 在线观看亚洲专区| 一区二区三区四区av| 日本伦理一区二区| 亚洲一区二区三区四区五区中文| 美女看a上一区| 91精品国产综合久久久久久久久久 | av在线不卡电影| 欧美国产日韩一二三区| www.av亚洲| 亚洲女同一区二区| 欧美性猛片aaaaaaa做受| 午夜在线成人av| gogogo免费视频观看亚洲一| 欧美丰满嫩嫩电影| 免费成人小视频| 久久久亚洲精品一区二区三区| 亚洲综合视频在线| 欧美精品色一区二区三区| 中文一区在线播放| 成人午夜在线视频| 国产精品国产三级国产普通话蜜臀 | 国产剧情一区在线| 欧美一区二区在线免费播放| 中文字幕字幕中文在线中不卡视频| 午夜精品福利一区二区蜜股av| 性欧美大战久久久久久久久| 91蝌蚪porny| 日韩福利视频网| 精品理论电影在线观看| 成人小视频在线观看| 性久久久久久久久久久久| 精品免费国产一区二区三区四区| 亚洲在线中文字幕| 久久新电视剧免费观看| 色综合天天综合网天天狠天天| 国产午夜亚洲精品不卡 | 精品伦理精品一区| 日本不卡一区二区| 欧美三级中文字幕在线观看| 看电视剧不卡顿的网站| 国产精品嫩草99a| 欧美喷潮久久久xxxxx| 国产福利一区二区三区视频| 亚洲综合一二三区| 久久九九国产精品| 欧美日韩国产首页在线观看| 国产精品一区二区在线看| 亚洲精品国产a久久久久久| 337p粉嫩大胆色噜噜噜噜亚洲 | 日韩精品免费视频人成| 久久精品一区四区| 51午夜精品国产| 日韩电影在线免费看| 国产精品私人影院| 91精品国产综合久久国产大片| 亚洲国产sm捆绑调教视频 | 在线观看日韩av先锋影音电影院| 日韩美女啊v在线免费观看| 91麻豆精品国产91久久久资源速度| 亚洲va韩国va欧美va| 国产调教视频一区| 日韩欧美精品在线| av电影天堂一区二区在线 | 国产精品午夜在线| 欧美一区二区在线视频| 在线免费亚洲电影| 午夜日韩在线电影| 依依成人精品视频| 中文字幕亚洲一区二区av在线| 91猫先生在线| 日韩中文欧美在线| 亚洲一区二区av电影| 亚洲日本免费电影| 欧美日本在线播放| 偷窥少妇高潮呻吟av久久免费| 91麻豆精品国产自产在线观看一区| 久久精品72免费观看| 性感美女久久精品| 亚洲一线二线三线视频| 亚洲精品高清在线观看| 亚洲色图制服诱惑| 自拍av一区二区三区| 中文字幕色av一区二区三区| 精品污污网站免费看| 色婷婷精品久久二区二区蜜臂av| 午夜精品久久久久久久久久 | av中文字幕一区| 国产在线观看免费一区| 免费成人在线观看视频| 蜜臀va亚洲va欧美va天堂| www久久久久| 久久精品亚洲麻豆av一区二区| 欧美精品v国产精品v日韩精品 | 久久机这里只有精品| 日韩va欧美va亚洲va久久| 日本一区二区三区在线观看| 欧美日韩久久久一区| 粉嫩欧美一区二区三区高清影视| 一区二区三区免费网站| 亚洲大片在线观看| 亚洲综合图片区| 爽好多水快深点欧美视频| 一二三区精品视频| 天堂久久久久va久久久久| 久久精品国产亚洲5555| 国产不卡在线视频| 97精品久久久午夜一区二区三区| 黄网站免费久久| 国内精品伊人久久久久av一坑| 午夜精品福利在线| 蜜臀av一区二区| 日韩精品1区2区3区| 中文字幕一区日韩精品欧美| 欧美不卡一区二区三区| 中文字幕国产一区| 一区二区三区免费观看| 久久机这里只有精品| 成人综合在线观看| 欧美网站大全在线观看| 91在线一区二区三区| 91久久线看在观草草青青| 欧美一区二区三区在线| 日本一区二区成人| 亚洲国产精品天堂| 韩国在线一区二区| 91九色02白丝porn| 欧美成人高清电影在线| 亚洲免费在线视频| 老色鬼精品视频在线观看播放| 日韩在线一区二区三区| 国产成人精品1024| 欧美日韩国产一级二级| 国产欧美精品在线观看| eeuss鲁一区二区三区| 欧美一区二区三区在线观看视频| 欧美色爱综合网| 久久女同精品一区二区| 亚洲国产美女搞黄色| 国产成人8x视频一区二区| 欧美另类z0zxhd电影| 中文字幕不卡在线| 久久精品国产亚洲一区二区三区| 日本v片在线高清不卡在线观看| 亚洲第一成年网| 国产成+人+日韩+欧美+亚洲| 日韩一区二区三区免费看| 欧美一级久久久| 亚洲一区二区三区自拍| 成人午夜电影小说| 久久影院电视剧免费观看| 亚洲视频一区二区免费在线观看| 亚洲精品美腿丝袜| 国产**成人网毛片九色| av电影在线观看一区| 337p粉嫩大胆色噜噜噜噜亚洲 | 免费高清不卡av| 在线观看亚洲a| 亚洲欧美日韩系列| 亚洲成av人片在线| 日本高清视频一区二区| 国产精品久久毛片av大全日韩| 日韩毛片视频在线看| 亚洲国产裸拍裸体视频在线观看乱了| 亚洲国产一区二区三区| 99在线视频精品| 狠狠色狠狠色综合系列| 欧美一区二区视频在线观看2022 | 国产精品一区专区| 91原创在线视频| 国产精品传媒在线| 国产精品一区一区三区| 久久精品欧美一区二区三区不卡 | 亚洲女性喷水在线观看一区| 国产黑丝在线一区二区三区| av网站一区二区三区| 精品成人在线观看| 久久99国产精品免费网站| 欧美一区二区在线免费观看| 欧美激情综合网| 国产美女在线精品| 精品日韩在线观看| 九九精品一区二区| 久久综合五月天婷婷伊人| 国产一区二区免费视频| 欧美精品一区二区三区久久久| 亚洲视频狠狠干| 99精品热视频| 亚洲日本一区二区| 国产永久精品大片wwwapp| 精品三级av在线|