Основы программирования в Linux
Основы программирования в Linux читать книгу онлайн
Внимание! Книга может содержать контент только для совершеннолетних. Для несовершеннолетних чтение данного контента СТРОГО ЗАПРЕЩЕНО! Если в книге присутствует наличие пропаганды ЛГБТ и другого, запрещенного контента - просьба написать на почту [email protected] для удаления материала
<b>#include <stdio.h></b>
<b>int printf(const char *format, ...);</b>
<b>int sprintf(char *s, const char *format, ...);</b>
<b>int fprintf(FILE * stream, const char *format, ...);</b>
Функция
printf
fprintf
stream
sprintf
s
У семейства
printf
Обычные символы передаются в вывод без изменений. Спецификаторы преобразований заставляют функцию
printf
%
printf("Some numbers: %d, %d, and &dn", 1, 2, 3);
Он порождает в стандартном выводе следующую строку.
Some numbers: 1, 2, and 3
Для вывода символа
%
%%
Далее перечислены наиболее часто применяемые спецификаторы преобразований:
□
%d
%i
□
%о
%x
□
%с
□
%s
□
%f
□
%e
□
%g
Очень важно, чтобы число и тип аргументов, передаваемых функции
printf
format
Он может быть равен
h
%hd
short int
l
%ld
long int
printf
-Wformat
Далее приведен еще один пример:
char initial = 'А';
char *surname = "Matthew";
double age = 13.5;
printf("Hello Mr %c %s, aged %gn", initial, surname, age);
Будет выводиться следующая информация:
Hello Mr A Matthew, aged 13.5
Вы можете добиться большего при выводе элементов с помощью спецификаторов полей. Они расширяют возможности спецификаторов преобразований, управляя расположением элементов при выводе. Обычно задается количество десятичных разрядов для числа с плавающей точкой или величина пробельных отступов, обрамляющих строку.
Спецификаторы полей задаются в виде чисел, следующих в спецификаторах преобразований непосредственно за знаком
%
Таблица 3.5
Формат | Аргумент | Вывод |
---|---|---|
%10s | "Hello" | | Hello| |
%-10s | "Hello" | |Hello | |
%10d | 1234 | | 1234| |
%-10d | 1234 | |1234 | |
%010d | 1234 | |0000001234| |
%10.4f | 12.34 | | 12.3400| |
%*s | 10, "Hello" | | Hello| |
Все приведенные примеры выводятся в поле шириной 10 символов. Обратите внимание на то, что отрицательная ширина поля означает выравнивание элемента по левому краю в пределах поля. Переменная ширина поля обозначается символом "звездочка" (
*
printf
Таблица 3.6
Формат | Аргумент | Вывод |
---|---|---|
%10s | "HelloTherePeeps" | |HelloTherePeeps| |