ในบทความนี้ เราจะกล่าวถึงพื้นฐาน ไวยากรณ์ และตัวอย่างการใช้งานของ ตัวระบุรูปแบบ ในซี การเขียนโปรแกรม .
ตัวระบุรูปแบบใน C
เดอะ ตัวระบุรูปแบบ ใช้เพื่อระบุรูปแบบของสตริงเอาต์พุต ซึ่งจะพิมพ์บนคอนโซลโดยใช้ พิมพ์f() และยังสามารถใช้ใน สแกน() ฟังก์ชันรับข้อมูลจากผู้ใช้ เราใช้ % เครื่องหมาย ด้วยตัวระบุทุกรูปแบบ ภาษา C ให้ความแตกต่าง ตัวระบุรูปแบบ สำหรับข้อมูลแต่ละประเภท บางส่วน ตัวระบุรูปแบบ คุณสามารถใช้ในโปรแกรม C ของคุณได้ดังตารางด้านล่าง:
ประเภทข้อมูล | ตัวระบุรูปแบบ | |
จำนวนเต็ม | จำนวนเต็มเดี่ยว | %d |
จำนวนเต็มไม่มีเครื่องหมาย | %ฉัน | |
จำนวนเต็มสั้นแบบมีเครื่องหมาย | %สวัสดี | |
จำนวนเต็มสั้นที่ไม่ได้ลงนาม | %ฮู | |
สองเท่า | สองเท่า | % ครึ่ง |
ยาวสองเท่า | %Lf | |
อักขระ | %ค | |
ยาว | ยาว | %ฉัน |
ไม่ได้ลงนามยาว | %ลู | |
ไม่ได้ลงนามยาวยาว | %llu | |
ยาว ยาว | %lli หรือ %lld | |
สตริง | %s | |
ไม่พิมพ์อะไรเลย | %n | |
จุดลอยตัวของสัญกรณ์วิทยาศาสตร์ | %e หรือ %E | |
ตัวชี้พิมพ์ | % หน้า | |
%O | การแสดงแปดเหลี่ยม | |
%x | การแสดงเลขฐานสิบหก |
ผ่านตัวระบุรูปแบบที่กล่าวถึงข้างต้นใน ฟังก์ชัน printf() คุณสามารถดึงข้อมูลที่จัดเก็บไว้ในนั้นได้
ต่อไปนี้คือตัวอย่างง่ายๆ โดยใช้ ตัวระบุรูปแบบ สำหรับประเภทข้อมูลต่างๆ ใน C:
1: จำนวนเต็ม
#รวมนานาชาติ หลัก ( ) {
นานาชาติ ในหนึ่ง = 10 ;
พิมพ์ฉ ( 'จำนวนเต็มที่ลงนาม: %d \n ' , ในหนึ่ง ) ;
พิมพ์ฉ ( 'จำนวนเต็มที่ไม่ได้ลงนาม: %u \n ' , ในหนึ่ง ) ;
พิมพ์ฉ ( 'จำนวนเต็มสั้นแบบมีเครื่องหมาย: %hi \n ' , ( สั้น ) ในหนึ่ง ) ;
พิมพ์ฉ ( 'จำนวนเต็มสั้นที่ไม่ได้ลงนาม: %hu \n ' , ( ไม่ได้ลงนาม สั้น ) ในหนึ่ง ) ;
กลับ 0 ;
}
2: สองเท่า
#รวมนานาชาติ หลัก ( ) {
สองเท่า ในหนึ่ง = 10.5 ;
พิมพ์ฉ ( 'สองเท่า: %lf \n ' , ในหนึ่ง ) ;
พิมพ์ฉ ( 'ยาวสองเท่า: %Lf \n ' , ( ยาว สองเท่า ) ในหนึ่ง ) ;
กลับ 0 ;
}
3: ตัวละคร
#รวมนานาชาติ หลัก ( ) {
ถ่าน ช = 'เอ' ;
พิมพ์ฉ ( 'ตัวละคร: %c \n ' , ช ) ;
กลับ 0 ;
}
4: ยาว
#รวมนานาชาติ หลัก ( ) {
ยาว ในหนึ่ง = 100,000 ;
พิมพ์ฉ ( 'ยาว: %ld \n ' , ในหนึ่ง ) ;
พิมพ์ฉ ( 'ความยาวที่ไม่ได้ลงนาม: %lu \n ' , ( ไม่ได้ลงนาม ยาว ) ในหนึ่ง ) ;
พิมพ์ฉ ( 'ลอง ลอง: %lld \n ' , ( ยาว ยาว ) ในหนึ่ง ) ;
พิมพ์ฉ ( 'Long Long ที่ไม่ได้ลงชื่อ: %llu \n ' , ( ไม่ได้ลงนาม ยาว ยาว ) ในหนึ่ง ) ;
กลับ 0 ;
}
5: สตริง
#รวมนานาชาติ หลัก ( ) {
ถ่าน สตริง [ ] = 'สวัสดีชาวโลก!' ;
พิมพ์ฉ ( 'สตริง: %s \n ' , สตริง ) ;
กลับ 0 ;
}
6: เบ็ดเตล็ด
#รวมนานาชาติ หลัก ( ) {
สองเท่า ในหนึ่ง = 123.45 น ;
พิมพ์ฉ ( 'จุดลอยตัวของสัญกรณ์วิทยาศาสตร์: %e \n ' , ในหนึ่ง ) ;
พิมพ์ฉ ( 'พิมพ์ตัวชี้: %p \n ' , & ในหนึ่ง ) ;
พิมพ์ฉ ( 'การแสดงแปดเหลี่ยม: %o \n ' , สิบห้า ) ;
พิมพ์ฉ ( 'การแสดงเลขฐานสิบหก: %x \n ' , สิบห้า ) ;
พิมพ์ฉ ( 'พิมพ์อักขระ %%: %% \n ' ) ;
กลับ 0 ;
}
การจัดรูปแบบด้วยตัวระบุรูปแบบ
เครื่องมือบางอย่างใน C สามารถใช้สำหรับจัดรูปแบบเอาต์พุต โดยทั่วไปจะแทรกอยู่ระหว่าง % เครื่องหมายและสัญลักษณ์ตัวระบุรูปแบบ เราได้กล่าวถึงเครื่องมือการจัดรูปแบบบางส่วนไว้ด้านล่าง:
- เดอะ ระยะเวลา (.) ป้ายแยกความกว้างของสนามอย่างแม่นยำ
- เดอะ ลบ (-) ป้ายบอกชิดซ้าย
- เดอะ ตัวเลข หลังจาก % เข้าสู่ระบบ ระบุความกว้างขั้นต่ำของฟิลด์ที่จะพิมพ์
ตัวอย่าง
ในโค้ดตัวอย่างด้านล่าง เราได้ใช้เครื่องมือการจัดรูปแบบกับตัวระบุรูปแบบ:
#รวมนานาชาติ หลัก ( )
{
ถ่าน สตริง [ ] = 'ลีนุกซ์' ;
พิมพ์ฉ ( '%30s \n ' , สตริง ) ;
พิมพ์ฉ ( '%-30 วินาที \n ' , สตริง ) ;
พิมพ์ฉ ( '%10.5s \n ' , สตริง ) ;
พิมพ์ฉ ( '%-20.5s \n ' , สตริง ) ;
กลับ 0 ;
}
ในรหัสข้างต้น %30 วินาที ระบุว่าควรพิมพ์สตริงในฟิลด์ที่มีความกว้างขั้นต่ำ 30 อักขระ %-30 วินาที ระบุการพิมพ์สตริงในฟิลด์อย่างน้อย 30 อักขระ แต่ควรจัดชิดซ้าย เช่นเดียวกับกรณีสำหรับ $10.5s และ %-20.5 วินาที
บรรทัดล่าง
เดอะ ตัวระบุรูปแบบ ใช้ในการจัดรูปแบบฟังก์ชันอินพุตและเอาต์พุต ได้แก่ พิมพ์f() ฟังก์ชั่น. เดอะ ตัวระบุรูปแบบ กำหนดรูปแบบของสตริงเอาต์พุตและใช้กับ % อักขระ. เมื่อเก็บค่าไว้ในตัวแปร คุณจะไม่สามารถแสดงเอาต์พุตบนคอนโซลได้โดยตรงโดยไม่ใช้ตัวระบุรูปแบบ เราได้กล่าวถึงประเภทต่างๆ ตัวระบุรูปแบบ ด้วยโค้ดตัวอย่างในส่วนด้านบนของคำแนะนำ