Библиотека knigago >> Компьютеры: Языки и системы программирования >> C, C++, C# >> Эффективный С. Профессиональное программирование

Роберт С. Сикорд - Эффективный С. Профессиональное программирование

Эффективный С. Профессиональное программирование
Книга - Эффективный С. Профессиональное программирование.  Роберт С. Сикорд  - прочитать полностью в библиотеке КнигаГо
Название:
Эффективный С. Профессиональное программирование
Роберт С. Сикорд

Жанр:

Программирование: прочее, C, C++, C#

Изадано в серии:

Библиотека программиста

Издательство:

Питер

Год издания:

ISBN:

978-5-4461-1851-9

Отзывы:

Комментировать

Рейтинг:

Поделись книгой с друзьями!

Помощь сайту: донат на оплату сервера

Краткое содержание книги "Эффективный С. Профессиональное программирование"

Мир работает на коде, написанном на C, но в большинстве учебных заведений программированию учат на Python или Java. Книга «Эффективный C. Профессиональное программирование» восполняет этот пробел и предлагает современный взгляд на C. Здесь рассмотрен C17, а также потенциальные возможности C2x. Издание неизбежно станет классикой, с его помощью вы научитесь писать профессиональные и надежные программы на C, которые лягут в основу устойчивых систем и решат реальные задачи.

Читаем онлайн "Эффективный С. Профессиональное программирование". [Страница - 103]

приступать к структурированию программы, рассмотрим пользовательский интерфейс. Вначале мы выводим справочную информацию
для программы командной строки, как показано в листинге 10.2.

Структурирование простой программы    261

Листинг 10.2. Вывод справочной информации
// Выводим справочный текст в командной строке
static void print_help(void) {
printf("%s", "primetest num1 [num2 num3 ... numN]\n\n");
printf("%s", "Tests positive integers for primality. Supports testing
");
printf("%s [2-%llu].\n", "numbers in the range", ULLONG_MAX);
}

Функция print_help состоит из трех отдельных вызовов printf, которые
записывают в стандартный вывод текст с объяснением о том, как использовать эту команду.
Аргументы командной строки передаются программе в текстовом виде,
поэтому мы определяем служебную функцию, чтобы преобразовать их
в целочисленные значения, как показано в листинге 10.3.
Листинг 10.3. Преобразование отдельного аргумента
командной строки
// Преобразует строковый аргумент arg в значение unsigned long long,
// на которое ссылается val
// Возвращает true, если преобразование аргументов было успешным,
// и false, если нет
static bool convert_arg(const char *arg, unsigned long long *val) {
char *end;
// strtoll возвращает внутренний индикатор ошибки; очистите errno
// перед вызовом
errno = 0;
*val = strtoull(arg, &end, 10);
//
//
if
if
if

}

Отслеживаем ошибки, когда вызов возвращает контрольное значение
и устанавливает errno
((*val == ULLONG_MAX) && errno) return false;
(*val == 0 && errno) return false;
(end == arg) return false;

// Если мы попали сюда, нам удалось преобразовать аргумент.
// Но мы хотим допускать только
// значения больше 1, поэтомы мы отбрасываем все значения --">

Оставить комментарий:


Ваш e-mail является приватным и не будет опубликован в комментарии.

Другие книги из серии «Библиотека программиста»:

XSLT. Стивен Холзнер
- XSLT

Жанр: Программирование: прочее

Год издания: 2002

Серия: Библиотека программиста

Внутри CPYTHON: гид по интерпретатору Python. Энтони Шоу
- Внутри CPYTHON: гид по интерпретатору Python

Жанр: Python

Год издания: 2023

Серия: Библиотека программиста