c - 在 C Programming Language Counting characters 一书中

标签 c

所以当我计算字符数时,我没有得到任何输出。 这段代码的输出是什么?因为当我编译并执行它时,我得到的都是空白。 我认为它应该计数。我不明白。请原谅,我刚开始学C。 我只想知道这段代码到底应该显示什么作为输出?

#include <stdio.h>
/* count characters in input; 1st version */

main()
{
    long nc;

    nc = 0;
    while (getchar() != EOF)
         ++nc;
    printf("%ld\n", nc);
}

最佳答案

欢迎来到 StackOverflow。我将逐行向您介绍这段代码的作用,也许这会对您有所帮助。

引入一些定义,特别是 printf 的定义:

#include <stdio.h>

声明main函数:

main()
{

声明并设置一个字符数变量:

    long nc;
    nc = 0;

这里是关键 -- 循环,一个接一个地获取字符,直到接收到的字符匹配 EOF,在大多数系统上是 Ctrl-D。

    while (getchar() != EOF)

为每个字符增加 nc 变量(将其增加 1)。

         ++nc;

将字符数打印为长整数。

    printf("%ld\n", nc);
}

关于c - 在 C Programming Language Counting characters 一书中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19579904/

相关文章:

c - 为什么这个简单的程序不能编译?

c - 在 C 项目中包含 OCR Api

编译器警告涉及数组的不匹配函数声明

c - 数字字符串上的 STRCMP

c - 如何在结构中使用 union ,并为每个结构定义不同的 union 类型?

c - 具有相同类型字段的结构上的 MPI_Allreduce 是否可移植?

c - MSYS2 未定义对 _imp__XXXXXXXX 的引用

检查 VS 谷歌测试框架的 C 代码

函数可以在 C 中返回多个值吗?

C 在 Windows : Bind to a free random port and get the port number