Специфікатор формату — це рядок, який використовується у функціях форматованого введення та виведення. Рядок формату визначає формат введення та виведення. Рядок форматування завжди починається з символу «%».
Найпоширенішими специфікаторами формату у функції printf() є:
Специфікатор формату | опис |
---|---|
%d або %i | Він використовується для друку цілого числа зі знаком, де ціле число зі знаком означає, що змінна може містити як позитивні, так і негативні значення. |
% дюймів | Він використовується для друку беззнакового цілого значення, де беззнакове ціле число означає, що змінна може містити лише позитивне значення. |
%O | Він використовується для друку вісімкового цілого числа без знаку, де вісімкове ціле число завжди починається з 0. |
%x | Він використовується для друку шістнадцяткового цілого числа без знаку, де шістнадцяткове ціле число завжди починається зі значення 0x. У цьому алфавітні символи друкуються малими літерами, наприклад a, b, c тощо. |
%X | Він використовується для друку шістнадцяткового цілого числа без знаку, але %X друкує символи алфавіту у верхньому регістрі, наприклад A, B, C тощо. |
%f | Він використовується для друку десяткових значень з плаваючою комою. За замовчуванням він друкує 6 значень після «.». |
% і і | Використовується для наукової нотації. Він також відомий як Мантиса або Експонента. |
%g | Він використовується для друку десяткових значень із плаваючою комою та використовує фіксовану точність, тобто значення після десяткового дробу на вході буде точно таким же, як значення на виході. |
%p | Використовується для друку адреси в шістнадцятковому вигляді. |
%c | Він використовується для друку беззнакового символу. |
%s | Він використовується для друку рядків. |
%ld | Він використовується для друку цілого числа з довгим знаком. |
Давайте детально розберемо специфікатори формату на прикладі.
int main() { int b=6; int c=8; printf('Value of b is:%d', b); printf(' Value of c is:%d',c); return 0; }
У наведеному вище коді ми друкуємо ціле значення b і c за допомогою специфікатора %d.
Вихід
як читати файл json
int main() { int b=10; int c= -10; printf('Value of b is:%u', b); printf(' Value of c is:%u',c); return 0; }
У наведеній вище програмі ми відображаємо значення b і c за допомогою специфікатора формату без знаку, тобто %u. Значення b додатне, тому специфікатор %u друкує точне значення b, але не друкує значення c, оскільки c містить від’ємне значення.
Вихід
int main() { int a=0100; printf('Octal value of a is: %o', a); printf(' Integer value of a is: %d',a); return 0; }
У наведеному вище коді ми відображаємо вісімкове та ціле значення a.
Вихід
int main() { int y=0xA; printf('Hexadecimal value of y is: %x', y); printf(' Hexadecimal value of y is: %X',y); printf(' Integer value of y is: %d',y); return 0; }
У наведеному вище коді y містить шістнадцяткове значення 'A'. Ми відображаємо шістнадцяткове значення y у двох форматах. Ми використовуємо %x і %X для друку шістнадцяткового значення, де %x відображає значення малими літерами, тобто «a», а %X відображає значення великими літерами, тобто «A».
Вихід
int main() { float y=3.4; printf('Floating point value of y is: %f', y); return 0; }
Наведений вище код друкує плаваюче значення y.
Вихід
int main() { float y=3; printf('Exponential value of y is: %e', y); return 0; }
Вихід
int main() { float y=3; printf('Exponential value of y is: %E', y); return 0; }
Вихід
int main() { float y=3.8; printf('Float value of y is: %g', y); return 0; }
У наведеному вище коді ми відображаємо плаваюче значення y за допомогою специфікатора %g. Специфікатор %g відображає вихідні дані так само, як і вхідні, з такою ж точністю.
програма успадкування на python
Вихід
int main() { int y=5; printf('Address value of y in hexadecimal form is: %p', &y); return 0; }
Вихід
int main() { char a='c'; printf('Value of a is: %c', a); return 0; }
Вихід
int main() { printf('%s', 'javaTpoint'); return 0; }
Вихід
Специфікатор мінімальної ширини поля
Припустімо, ми хочемо відобразити результат, який займає мінімальну кількість місць на екрані. Ви можете досягти цього, відобразивши ціле число після знака відсотка специфікатора формату.
int main() { int x=900; printf('%8d', x); printf(' %-8d',x); return 0; }
У наведеній вище програмі специфікатор %8d відображає значення після 8 пробілів, тоді як специфікатор %-8d зробить значення вирівняним за лівим краєм.
Вихід
Тепер ми побачимо, як заповнити порожні місця. Це показано в коді нижче:
int main() { int x=12; printf('%08d', x); return 0; }
У наведеній вище програмі %08d означає, що порожнє місце заповнено нулями.
Вихід
дханашрі верма
Визначення точності
Ми можемо вказати точність за допомогою '.' Оператор (крапка), після якого йде ціле число та специфікатор формату.
int main() { float x=12.2; printf('%.2f', x); return 0; }
Вихід