Функція printf () в C ++ використовується для запису відформатованого рядка в stdout.
прототип printf ()
int printf (формат const char *,…);
printf()
Функція записує рядок , на яку вказує формат на стандартний висновок. Формат рядка може містити специфікатори формату, що починаються з%, які замінюються значеннями змінних, які передаються printf()
функції як додаткові аргументи.
Це визначається у файлі заголовка.
параметри printf ()
- формат: вказівник на рядок із нульовим завершенням, який записується у файловий потік. Він складається з символів разом із необов’язковими специфікаторами формату, що починаються з%.
Специфікатори формату замінюються значеннями відповідних змінних, що слідують за рядком формату.
Специфікатор формату складається з таких частин:
- Провідний знак%
- Прапори: необов’язковий один або кілька прапорів, що змінює поведінку перетворення.
- -: Ліворуч обґрунтуйте результат у полі. За замовчуванням це правильно виправдано.
- +: Знак результату додається до початку значення, навіть для позитивних результатів.
- Пробіл: Якщо знаку немає, пробіл приєднується до початку результату.
- #: Виконується альтернативна форма перетворення.
- 0: використовується для цілого числа та числа з плаваючою комою. Провідні нулі використовуються для заповнення цифр замість пробілу.
- Ширина: необов’язкове * або ціле значення, що використовується для вказівки поля мінімальної ширини.
- Точність: Необов’язкове поле, що складається з a. після чого * або ціле число, або нічого, щоб вказати точність.
- Довжина: необов’язковий модифікатор довжини, який визначає розмір аргументу.
- Специфікатор: специфікатор формату перетворення. Доступні специфікатори формату такі:
Специфікатор формату Опис % Відбитків% c Пише одного персонажа s Записує рядок символів d або i Перетворює підписане ціле число в десяткове подання o Перетворює ціле число без знака у вісімкове представлення X або x Перетворює ціле число без знака в шістнадцяткове подання u Перетворює ціле число без знака в десяткове подання F або f Перетворює число з плаваючою точкою в десяткове подання Е або е Перетворює число з плаваючою комою в десятковий запис степеня A або a Перетворює число з плаваючою комою в шістнадцятковий показник G або g Перетворює число з плаваючою комою в десятковий або десятковий запис степеня п Повертає кількість символів, записаних дотепер цим викликом функції. Результат записується у значення, на яке вказує аргумент стор Пише послідовність символів реалізації, що визначає покажчик. Отже, загальним форматом специфікатора формату є:
%(flags)(width)(.precision)(length)specifier
- …: Інші додаткові аргументи, що вказують дані, які слід надрукувати. Вони відбуваються в послідовності відповідно до специфікатора формату.
printf () Повертається значення
У разі успіху printf()
функція повертає кількість записаних символів. При відмові повертає від'ємне значення.
Приклад 1: Як працює функція printf ()
#include int main() ( int x = 5; char my_name() = "Lincoln"; printf("x = %d ", x); printf("My name is %s ", my_name); return 0; )
Коли ви запускаєте програму, результат буде:
x = 5 Мене звати Лінкольн
Приклад 2: Інші приклади на printf ()
#include int main() ( char ch = 'a'; float a = 5.0, b = 3.0; int x = 10; printf("%.3f / %.3f = %.3f ", a,b,a/b); printf("Setting width %*c ",5,ch); printf("Octal equivalent of %d is %o ",x,x); return 0; )
Коли ви запускаєте програму, результат буде:
5.000 / 3.000 = 1.667 Встановлення ширини восьмеричного еквівалента 10 дорівнює 12