ตัวระบุรูปแบบ (Format Specifiers) ใช้สำหรับการดำเนินการอินพุต-เอาต์พุต (I/O) ด้วยตัวระบุรูปแบบ คอมไพเลอร์จึงเข้าใจว่าข้อมูลใน I/O เป็นชนิดใด
มีองค์ประกอบบางอย่างที่ส่งผลต่อตัวระบุรูปแบบ:
เครื่องหมายลบ (-): จัดชิดซ้าย (Left alignment)
ตัวเลขหลัง % ระบุความกว้างฟิลด์ขั้นต่ำ หากสตริงสั้นกว่าความกว้าง จะเติมช่องว่าง
จุด (.) - แยกความกว้างฟิลด์และความแม่นยำ
ตัวระบุรูปแบบ (Format Specifiers)
รายการตัวระบุรูปแบบบางส่วน:
| Specifier | ใช้สำหรับ |
|---|---|
| %c | ตัวอักษรเดี่ยว |
| %s | สตริง |
| %hi | short (signed) |
| %hu | short (unsigned) |
| %Lf | long double |
| %n | ไม่พิมพ์อะไร |
| %d | จำนวนเต็มฐานสิบ (สมมติฐานฐาน 10) |
| %i | จำนวนเต็มฐานสิบ (ตรวจจับฐานอัตโนมัติ) |
| %o | จำนวนเต็มฐานแปด (Octal) |
| %x | จำนวนเต็มฐานสิบหก (Hexadecimal) |
| %p | ที่อยู่ (หรือพอยน์เตอร์) |
| %f | จำนวนจุดลอยตัวสำหรับ float |
| %u | unsigned int ฐานสิบ |
| %e | จำนวนจุดลอยตัวแบบสัญลักษณ์วิทยาศาสตร์ |
| %E | จำนวนจุดลอยตัวแบบสัญลักษณ์วิทยาศาสตร์ |
| %% | สัญลักษณ์ % |
ตัวอย่าง
โปรแกรม C สำหรับตัวระบุรูปแบบ %o (จำนวนเต็มฐานแปด):
#include <stdio.h>
int main() {
int num = 31;
printf("%o\n", num);
return 0;
}ผลลัพธ์
เมื่อรันโปรแกรม จะได้ผลลัพธ์ดังนี้:
37