Вопросы по теме 'kernighan-and-ritchie'

Упражнение K&R: многомерный массив в массиве указателей
Упражнение (5-9): Перепишите подпрограммы day_of_year с указателями вместо индексации. static char daytab[2][13] = { {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}, {0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31} }; /*...
1366 просмотров

K&R учит плохой читабельности?
Прошло некоторое время с тех пор, как я смотрел на C (все еще учусь), и я только что вернулся к книге K&R. Я только что прошел упражнение 5-3 (стр. 107). Напишите версию функции strcat, показанную в главе 2, с указателем: strcat(s,t)...
1399 просмотров
schedule 05.07.2022

Почему объявления целевых функций в исходном коде GCC используют стиль K&R вместо прототипов?
Я изучал исходный код GCC и заметил, что большинство (если не все) целевых файлов исходного кода (например, arm.c) используют старый стиль функции K&R. Есть ли для этого какая-то особая причина? Обратная совместимость? Портативность?
102 просмотров

Пожалуйста, объясните этот пример кода C
Этот код исходит от K&R. Я читал ее несколько раз, но она все еще ускользает от моего понимания. #define BUFSIZE 100 char buf[BUFSIZE]; int bufp = 0; int getch(void) { return(bufp>0)?buf[--bufp]:getchar(); } int ungetch(int c) {...
1821 просмотров
schedule 17.01.2023

Код K&R malloc не имеет смысла?
Этот код взят из книги K&R — Глава 8 Раздел 7: Пример — Распределитель памяти. Этот код, по крайней мере для меня, не имеет смысла. «Заголовок» — это объединение структуры и «наиболее ограничительного типа выравнивания», который является длинным...
2642 просмотров
schedule 14.06.2023

Язык программирования K&R C 1.5.1 (копирование файлов)
Что ж, несколько месяцев назад я прочитал еще одну «хорошо известную» книгу C (на моем языке), и я так ничего и не узнал об этом. То, как K&R пишет 3 главы на 20 страницах, просто потрясающе, и, конечно, я не могу ожидать огромных объяснений, но это...
1035 просмотров
schedule 09.02.2023

ошибка сегментации в getword
Привет, это вопрос относительно программы подсчета ключевых слов Кернигана и Ритчи (глава 6, раздел 3 издания ANSI). Я включил весь код в ссылку ниже. Когда я пытаюсь запустить код на любом исходном коде C, я не получаю никакого вывода. Поэтому,...
154 просмотров

Что такое EOF в Ubuntu, а также о Кернигане и Ритчи
Я начал изучать C, а также начал использовать Ubuntu. Пишу коды в vim через терминал. Я учился у Кернигана и Ричи. Вот код - #include <stdio.h> int main() { int c; while ( (c = getchar()) != EOF) putchar(c); return 0; } Теперь...
6499 просмотров
schedule 08.07.2023

Ошибка препроцессора C
Я ожидал, что код выведет suse.sys, но на самом деле он выводит win.sys. Почему это так? #define SYS SUSE #if SYS == WIN #define HDR "win.sys" #elif SYS == SUSE #define HDR "suse.sys" #else #define HDR "default.sys" #endif...
64 просмотров

Есть ли ошибка в примере кода в главе 1.9 классической книги «Язык программирования Си»?
В главе 1.9 классической книги Брайана и Денниса о языке C "Язык программирования C" есть кусок кода о функции getline, которая используется для копирования следующей строки входного текста в строку типа char. и проверьте перелив. Я цитирую код...
224 просмотров
schedule 28.05.2022

К&Р 1-24. Почему моя программа неправильно проверяет совпадение одинарных и двойных кавычек?
Излишне полный исходный код: #include <stdio.h> main() { int c; //char read from stdin. Type is int to accomodate EOF int x; //generic counter int nl_counter = 1; //new line counter int parens, brackets,...
154 просмотров
schedule 13.01.2023

K&R C Упражнение 1-18 нет проблем с выводом/отладкой
Я написал следующий код в Code::Blocks в ответ на упражнение K&R C 1-18: Напишите программу для удаления завершающих пробелов и знаков табуляции из каждой строки ввода, а также для удаления полностью пустых строк. Я имел в виду удаление...
74 просмотров

Указывает ли указание использования void в объявлении функции, не принимающей аргументов, на самый неприятный анализ?
Является ли Most Vexing Parse корнем двусмысленности относительно того, следует ли использовать void в качестве параметра объявления функции, которая не принимает аргументов? Например, следующий код компилируется без ошибок и работает нормально...
160 просмотров

Тонкость преобразования символов в целые числа
Может ли кто-нибудь ясно объяснить, что на самом деле означают эти строки из K&R: " При преобразовании char в int может ли когда-либо быть получено отрицательное целое число? Ответ зависит от компьютера. Определение C гарантирует, что любой...
145 просмотров
schedule 07.12.2022

Почему функция может передавать указатель в этом примере K&R?
Я изучаю C, читая K&R (версия ANSI) , дополненную 21st Century C . Я бы сказал, что уже достаточно уверен в большинстве основ указателей. Это означает, что я знаю, что вы должны быть очень осторожны при передаче указателей из функции, которые не...
88 просмотров
schedule 14.06.2022

Как именно эта функция является примером преобразования char в int?
В книге Язык программирования C Кернигана и Ритчи, второе издание, говорится на странице 43 в главе о преобразованиях типов : Еще одним примером преобразования char в int является функция lower , которая преобразует один символ в нижний...
295 просмотров

Почему Керниган и Ритчи не используют int для основных функций?
Каждый выполненный пример завершается с помощью main без «int». Почему это и почему он все равно компилируется без него. Созданы ли компиляторы C с int?
302 просмотров
schedule 10.04.2024

вариативные функции с `fcn ( char *, ) `, как они узнают, когда заканчиваться?
Я просматривал материал из нескольких источников, включая мое старое любимое второе издание K&R. Я рассматривал функции с переменным числом аргументов, и почти все учебные пособия, которые я видел, используют и int перед эллипсами для определения...
115 просмотров

K&R Упражнение 1.21
В настоящее время пытается решить ex 1.21. Задача: Написать entab-программу, которая заменяет строки пробелов минимальным количеством табуляции и пробелов для достижения того же интервала. Используйте те же позиции табуляции, что и для detab ....
164 просмотров
schedule 05.12.2022

Язык программирования C. Упражнение 1-9 Задача
я делаю это упражнение C, и я не могу заставить его работать. Любые подсказки относительно того, что я делаю неправильно? (я стараюсь не использовать ни scanf, ни printf) Напишите программу, которая копирует ввод в вывод, заменяя каждую строку...
149 просмотров
schedule 13.07.2023