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

📄 fold.c

📁 操作系统源代码
💻 C
字号:
/* fold - folds long lines		Author: Terrence W. Holm *//*  Usage:  fold  [ -width ]  [ file ... ]  */#include <stdlib.h>#include <stdio.h>#define  TAB		8#define  DEFAULT_WIDTH  80int column = 0;			/* Current column, retained between files  */_PROTOTYPE(int main, (int argc, char **argv));_PROTOTYPE(void Fold, (FILE *f, int width));int main(argc, argv)int argc;char *argv[];{  int width = DEFAULT_WIDTH;  int i;  FILE *f;  if (argc > 1 && argv[1][0] == '-') {	if ((width = atoi(&argv[1][1])) <= 0) {		fprintf(stderr, "Bad number for fold\n");		exit(1);	}	--argc;	++argv;  }  if (argc == 1)	Fold(stdin, width);  else {	for (i = 1; i < argc; ++i) {		if ((f = fopen(argv[i], "r")) == NULL) {			perror(argv[i]);			exit(1);		}		Fold(f, width);		fclose(f);	}  }  return(0);}void Fold(f, width)FILE *f;int width;{  int c;  while ((c = getc(f)) != EOF) {	if (c == '\t')		column = (column / TAB + 1) * TAB;	else if (c == '\b')		column = column > 0 ? column - 1 : 0;	else if (c == '\n' || c == '\r')		column = 0;	else		++column;	if (column > width) {		putchar('\n');		column = c == '\t' ? TAB : 1;	}	putchar(c);  }}

⌨️ 快捷键说明

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