Непонятны спецификаторы в printf - C (СИ)
Формулировка задачи:
Прошу объяснить подробно , что делает строка:
Как define Работает то знаю, но что это такое: %*с
#define TRACE(msg, val) printf("TRACE: %*c" msg, 2 * level + 1, ' ', val);
Решение задачи: «Непонятны спецификаторы в printf»
textual
Листинг программы
#include <stdio.h> int main (void) { printf ("%*c\n", 3, 'a'); printf ("%*c\n", 4, 'b'); printf ("%*c\n", 5, 'c'); printf ("%*c%*c\n", 2, 'x', 3, 'y'); printf ("%*d\n", 5, 12); printf ("%*d\n", 5, 123456); printf ("%*s\n", 5, "abc"); printf ("%*s\n", 5, "abcdefg"); return 0; }
Объяснение кода листинга программы
- Включаем заголовочный файл
для использования функций ввода-вывода - Объявляем функцию main() — точку входа в программу
- Выводим символ 'a' с помощью функции printf() с использованием спецификатора формата
%*c
где: — 3 - указывает на поле вывода в 3 символа — 'a' — символ, который будет выведен - Выводим символ 'b' с помощью функции printf() с использованием спецификатора формата
%*c
где: — 4 - указывает на поле вывода в 4 символа — 'b' — символ, который будет выведен - Выводим символ 'c' с помощью функции printf() с использованием спецификатора формата
%*c
где: — 5 - указывает на поле вывода в 5 символов — 'c' — символ, который будет выведен - Выводим символы 'x' и 'y' с помощью функции printf() с использованием спецификатора формата
%*c%*c
где: — 2 - указывает на поле вывода в 2 символа — 'x' — первый символ, который будет выведен — 3 - указывает на поле вывода в 3 символа — 'y' — второй символ, который будет выведен - Выводим число 12 с помощью функции printf() с использованием спецификатора формата
%*d
где: — 5 - указывает на поле вывода в 5 символов — 12 - число, которое будет выведено - Выводим число 123456 с помощью функции printf() с использованием спецификатора формата
%*d
где: — 5 - указывает на поле вывода в 5 символов — 123456 - число, которое будет выведено - Выводим строку
abc
с помощью функции printf() с использованием спецификатора формата%*s
где: — 5 - указывает на поле вывода в 5 символов —abc
— строка, которая будет выведена - Выводим строку
abcdefg
с помощью функции printf() с использованием спецификатора формата%*s
где: — 5 - указывает на поле вывода в 5 символов —abcdefg
— строка, которая будет выведена - Возвращаем 0, чтобы указать, что программа успешно завершилась
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д