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

📄 split.c

📁 Version 6 Unix 核心源代码 Version 6 Unix 核心源代码
💻 C
字号:
int	count	1000;int	fnumber;int	ibuf[259];int	obuf[259];char	fname[100];char	*ifil;char	*ofil;main(argc, argv)char *argv[];{	register i, c, f;	for(i=1; i<argc; i++)	if(argv[i][0] == '-')	switch(argv[i][1]) {	case '\0':		ifil = 1;		continue;	case '0':	case '1':	case '2':	case '3':	case '4':	case '5':	case '6':	case '7':	case '8':	case '9':		count = number(argv[i]+1);		continue;	} else	if(ifil)		ofil = argv[i]; else		ifil = argv[i];	if(ifil != 0 && ifil != 1)		if(fopen(ifil, ibuf) < 0) {			write(2, "cannot open input\n", 18);			exit();		}	if(ofil == 0)		ofil = "x";loop:	f = 1;	for(i=0; i<count; i++)	do {		c = getc(ibuf);		if(c < 0) {			if(f == 0)				fflush(obuf);			exit();		}		if(f) {			for(f=0; ofil[f]; f++)				fname[f] = ofil[f];			fname[f++] = fnumber/26 + 'a';			fname[f++] = fnumber%26 + 'a';			fname[f] = '\0';			fnumber++;			if(fcreat(fname, obuf) < 0) {				write(2, "Cannot create output\n", 20);				exit();			}			f = 0;		}		putc(c, obuf);	} while(c != '\n');	fflush(obuf);	close(obuf[0]);	goto loop;}number(str)char *str;{	register n;	register char *s;	n = 0;	for(s = str; *s; s++)		if(*s>='0' && *s<='9')			n = n*10 + *s-'0';	return(n);}

⌨️ 快捷键说明

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