#include <stdio.h>
#include <stdlib.h>
#include <zconf.h>

#define NONE                 "\e[0m"
#define BLUE                 "\e[0;34m"
#define GREEN                "\e[0;32m"
#define RED                  "\e[0;31m"

#define PRINT_WITH_RED(fmt, ...) \
    printf(RED fmt NONE, ##__VA_ARGS__);

#define PRINT_WITH_GREEN(fmt, ...) \
    printf(GREEN fmt NONE, ##__VA_ARGS__);

#define PRINT_WITH_BLUE(fmt, ...) \
    printf(BLUE fmt NONE, ##__VA_ARGS__);

int main()
{
    int ch, iLineCount, iWordCount, iCharCount;
    iLineCount = iWordCount = iCharCount = 0;

    FILE *fp;

    if((fp = fopen("/home/programs/clion/main.cpp", "r")) == NULL)
    {
        printf("can not open file\n");
        exit(0);
    }
    while ((ch = fgetc(fp)) != EOF)
    {
        printf("%c ", ch);
        ++iCharCount;
        PRINT_WITH_BLUE("char +1: %d ", iCharCount);
        if (ch == '\n')
        {
            ++iLineCount;
            PRINT_WITH_RED("line +1: %d ", iLineCount);
        }
        if (ch == ' ' || ch == '\n' || ch == '\t')
        {
            PRINT_WITH_GREEN("words +1: %d ", iWordCount);
            ++iWordCount;
        }
        putchar('\n');
    }

    printf("line: %d, words: %d, char: %d\n", iLineCount, iWordCount, iCharCount);

    fclose(fp);

    return 0;

}运行结果

c 计算文件字符数,行数,单词数

相关文章:

  • 2022-12-23
  • 2021-10-12
  • 2021-09-16
  • 2022-12-23
  • 2022-12-23
  • 2021-08-15
  • 2021-11-28
  • 2022-12-23
猜你喜欢
  • 2022-02-18
  • 2022-12-23
  • 2022-01-21
  • 2022-12-23
  • 2022-02-25
  • 2021-11-23
  • 2021-11-27
相关资源
相似解决方案