lsflib/src/tokenchar.c
author Markus Bröker <mbroeker@largo.dyndns.tv>
Sat, 13 Dec 2008 17:57:59 +0100
changeset 7 a1aa30f0f904
parent 6 c3dc3eb3b541
child 9 c3fecc82ade6
permissions -rw-r--r--
libtest demonstrates how to use shared libraries committer: Markus Bröker <mbroeker@largo.homelinux.org>

/*
 *  $Id: tokenchar.c 94 2008-04-05 01:27:30Z mbroeker $
 * $URL: http://localhost/svn/c/lsflib/trunk/src/tokenchar.c $
 *
 */

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <ctype.h>
#include <string.h>

#define MAXCHARS 80

int tokenchar (FILE * f)
{
    char line[MAXCHARS];
    int i;
    int lines;
    int chars;

    lines = chars = 0;
    *line = 0;

    while ((fgets (line, MAXCHARS, f)) != NULL) {
        for (i = 0; i < strlen (line); i++) {
            switch (line[i]) {
            case '.':
                printf ("%c\n", line[i]);
                lines++;
                break;

            case '?':
                printf ("%c\n", line[i]);
                lines++;
                break;

            case '\n':
                lines++;
                break;

            case '\t':
                break;

            default:
                printf ("UNKNOWN CHAR: %c\n", line[i]);
                chars++;
                break;
            }
        }
        *line = 0;
    }

    rewind (f);
    return chars;
}