บทความนี้สอนเขียนโค้ดแปลงเลขฐาน 10 เป็นฐาน 16 ภาษาซี โดยใช้คำสั่ง sprintf ร่วมกับ %x เราจะได้เรียนรู้การเขียนโค้ด พร้อมผลลัพธ์ และคำอธิบายขั้นการทำงานของโค้ดแปลงเลขฐานด้วยภาษาซี สามารถเขียนโปรแกรมได้ดังนี้
ตัวอย่าง แปลงเลขฐาน 10 เป็นฐาน 16 ภาษาซี
#include <stdio.h>
#include <stdlib.h>
int main() {
int decimal = 1987;
char hex[100];
sprintf(hex, "%X", decimal);
printf("decimal value: %d\n", decimal);
printf("hexadecimal value: %s\n", hex);
return 0;
}
ผลลัพธ์
decimal value: 1998
hexadecimal value: 7CE
จากตัวอย่างอธิบายโค้ดได้ดังนี้
1. include stdio.h และ stdlib.h
2. สร้างตัวแปร decimal ชนิด int เก็บค่า 1998 เป็นเลขฐาน 10
3. สร้างตัวแปร hex ชนิด char ขนาด 100 สำหรับเลขฐาน 16
4. ใช้คำสั่ง sprintf ร่วมกับ %X หรือ %x เพื่อแปลงเลขฐาน 10 เป็นเลขฐาน 16
5. ใช้คำสั่ง printf ร่วมกับ %d แสดงค่า decimal และ %s สำหรับแสดงค่า hex ออกสู่หน้าจอ