time to sleep...
This commit is contained in:
@@ -7,7 +7,8 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
/* ------------------------------------------------------------------ */
|
||||
int check_a_file_by_fp(FILE *fp, char *filename)
|
||||
{
|
||||
int input, linenum, count;
|
||||
int flagline;
|
||||
@@ -22,16 +23,52 @@ while (EOF != (input=getc(stdin))) {
|
||||
}
|
||||
if ((input < 0) || (input>127)) {
|
||||
if (!flagline) {
|
||||
fprintf(stderr, "non ascii 0x%x line %d\n",
|
||||
fprintf(stderr, "%s: non ascii 0x%x line %d\n",
|
||||
filename,
|
||||
input, linenum);
|
||||
flagline = 1;
|
||||
}
|
||||
count++;
|
||||
}
|
||||
}
|
||||
if (count) {
|
||||
fprintf(stderr, "at least %d non-ascii characters found\n", count);
|
||||
exit(1);
|
||||
return count;
|
||||
}
|
||||
/* ------------------------------------------------------------------ */
|
||||
int check_a_file_by_name(char *name)
|
||||
{
|
||||
FILE *fp;
|
||||
int foo;
|
||||
|
||||
if (NULL == name) {
|
||||
fp = stdin;
|
||||
}
|
||||
else {
|
||||
if (NULL==(fp=fopen(name, "r"))) {
|
||||
perror(name);
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
|
||||
foo = check_a_file_by_fp(fp, NULL==name ? "<stdin>" : name);
|
||||
|
||||
return foo;
|
||||
}
|
||||
/* ------------------------------------------------------------------ */
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
int foo, idx;
|
||||
|
||||
if (1 == argc) {
|
||||
foo = check_a_file_by_name(NULL);
|
||||
}
|
||||
else {
|
||||
for (idx=1; idx<argc; idx++) {
|
||||
printf("%4d %s\n", idx, argv[idx]);
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
/* ------------------------------------------------------------------ */
|
||||
|
||||
Reference in New Issue
Block a user