บทความนี้สอนเขียนโปรแกรมแปลงเลขฐาน 10 เป็น ฐาน 8 ภาษาซี ด้วยคำสั่ง sprintf ร่วมกับ %o ในบทความนี้จะเริ่มตั้งแต่การเขียนโค้ดเพื่อสร้างโปรแกรมดังกล่าว พร้อมผลลัพธ์ และคำอธิบายคำสั่งต่างๆ ของภาษาซี มีรายละเอียดดังนี้
ตัวอย่าง แปลงเลขฐาน 10 เป็น ฐาน 8 ภาษาซี
#include <stdio.h>
int main() {
int decimal = 99;
char octal[20];
sprintf((char*)&octal, "%o", decimal);
printf("decimal value is : %d\n", decimal);
printf("octal value is : %s\n", octal);
return 0;
}
ผลลัพธ์
decimal value is : 99
octal value is : 143
จากตัวอย่างโปรแกรมอธิบายได้ดังนี้
1. สร้างตัวแปร decimal ชนิด int เก็บเลขฐาน 10 คือ 99
2. สร้างตัวแปร octal ชนิด char ขนาด 20 เก็บเลขฐาน 8
3. ใช้คำสั่ง sprintf แปลงเลขฐาน 10 เป็นเลขฐาน 8 ร่วมกับ %o
4. ใช้คำสั่ง printf แสดงค่าตัวแปร decimal ด้วย %d และ octal ด้วย %s