1. 程式人生 > >利用fgetc統計文件所在字節 和 總行數

利用fgetc統計文件所在字節 和 總行數

printf OS while pac return 內容 efi sha d+

#include <stdio.h>
#include <stdlib.h>
#define IS_WHITE_SPACE(c) ((c)==‘ ‘||(c)==‘\t‘||(c)==‘\n‘) ? 1:0
//統計文件:內容大小字節 和函數

int main(int a,char *argv[]){
	if(a!=2){
		printf("useage:%s source!\n", argv[0]);
		exit(1);
	}
	int row=0;
	int chars =0;
	int word = 0;
	
	FILE *fp1;
	fp1 = fopen(argv[1],"r");
	if(fp1==NULL){
	     printf("source file open error");
	     exit(1);
	}
	
	int ch;
	while((ch=fgetc(fp1)) != EOF){
		chars++;
		if(ch==‘\n‘) row++;
		if(IS_WHITE_SPACE(ch)){
			word++;
		}
	}
	//關閉流
	if(fclose(fp1)!=0){
		printf("source file close error");
	}
	printf("文件:%s 占:%d字節;共:%d行 共:%d個單詞\n",argv[1],chars,row,word);
	
	return 0;

}

  

利用fgetc統計文件所在字節 和 總行數