Вопросы

Подсчет количества символов в языке C

Я новичок в языке C и сейчас пытаюсь подсчитать количество вводимых символов.

#include <stdio.h>

main()
{
    long nc;
    nc = 0;
    while (getchar() != EOF)
        ++nc;
    printf("%1d\n", nc);
}

Это то, что я написал так же, как и мой учебник, но функция printf, похоже, не работает.

Кроме того, похоже, что эта программа не завершается, потому что подсказка не появляется.

Я понятия не имею, достаточно ли старое содержание этой книги.

Не могли бы вы сказать мне, что не так с этим кодом?

Это похоже на код от K&R. И был кто-то еще, кто столкнулся с той же проблемой неверной интерпретации %ld как %1d. Учитывая, что nc относится к типу long, вам понадобится %ld (буква ell). В книге есть буква, а не буква. Использование main() показывает, что книга датирована (2-е изд. 1988 г.). C99 требует возвращаемого типа и предпочитает void в списке аргументов: int main(void).   —  person agongji    schedule 15.02.2020

Читать:
Предоставить Amazon ML разрешение на чтение из Amazon S3 программно

Здравствуйте, близкие избиратели, рекомендую НЕ считать этот вопрос опечаткой. Джон гениально объяснил совершенно иную проблему с точки зрения ОП.   —  person agongji    schedule 15.02.2020

Предыдущий вопрос был Нет вывода для кодов, написанных на языке программирования C Брайаном В. Керниганом и Деннисом М. Ричи, но сейчас он закрыт. Там было несколько лишних опечаток.   —  person agongji    schedule 15.02.2020

Если вы включите предупреждения (что вы всегда должны делать), компилятор укажет вам на проблему, например предупреждение: формат «% d» ожидает аргумент типа «int», но аргумент 2 имеет тип «long int». В GCC вы можете использовать флаг -Wall.   —  person agongji    schedule 15.02.2020

Похожие записи

Указатели на шаблонный класс

admin

Запустите Outlook, чтобы составить сообщение с темой и вложением с помощью переключателей командной строки Outlook.

admin

Как читать прямоугольник, окруженный пробелами, используя readxl

admin

Python: JSON не читает и символ

admin

Traefik как Kubernetes Ingress в Azure — назначение статического IP-адреса службе Traefik

admin

целевая командная строка makefile

admin