📄 checkline.c
字号:
#include <stdio.h>
#include <stdlib.h>
#define MAX_CHAR_NUM 120
#define MAX_CHAR_CHILL 71
static long g_line_total;
static long g_line;
char *ReadData(FILE *fp, char *buf)
{
return fgets(buf, MAX_CHAR_NUM, fp);
}
void someprocess(char *buf)
{
int str_len;
int i, j;
g_line_total++;
str_len = strlen(buf);
j = str_len;
/*if the tail is '\n' or ' ', do not care, just remove it*/
if (str_len > MAX_CHAR_CHILL + 1)
{
for (i=0; i < str_len; i++)
{
if ((buf[j - 1 - i] == 0x20)
|| (buf[j - 1 - i] == '\n'))
{
str_len = str_len - 1;
}
else
{
break;
}
}
}
if (str_len > MAX_CHAR_CHILL + 1)
{
g_line++;
printf("\nLINE[%ld] : %d more than %d\n", g_line_total, str_len, MAX_CHAR_CHILL);
printf("%s\n", buf);
}
}
int main(int argc, char *argv[])
{
FILE *fp;
char *buf, filename[120], *p;
if (argc < 2)
{
printf("Usage: checkline filename\n");
return 0;
}
memset(filename, 0, 120);
sprintf(filename, argv[1]);
printf("checkline %s\n", filename);
/*
gets(filename);
*/
if ((fp=fopen(filename, "r"))==NULL)
{
printf("open file error!!\n");
return;
}
buf=(char*)malloc(MAX_CHAR_NUM*sizeof(char));
g_line = 0;
g_line_total = 0;
while(1)
{
memset(buf, 0, MAX_CHAR_NUM);
p=ReadData(fp, buf);
if(!p)
{
break;
}
someprocess(buf);
}
printf("***********************************************\n");
printf("Total [%ld], [%ld] lines over max char number\n", g_line_total, g_line);
printf("***********************************************\n");
free(buf);
fclose(fp);
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -