ที่นี่เราจะมาดูวิธีการพิมพ์ค่า int แบบยาวโดยใช้ฟังก์ชัน putchar() ใน C เราสามารถพิมพ์ค่าของตัวแปรบางตัวได้อย่างง่ายดายโดยใช้ printf() ใน C แต่ในที่นี้ ข้อจำกัดคือ เราไม่สามารถใช้ฟังก์ชันอื่นยกเว้น putchar( )
ดังที่เราทราบกันดีว่า putchar() ใช้เพื่อพิมพ์เฉพาะอักขระ เราสามารถใช้ฟังก์ชันนี้เพื่อพิมพ์ตัวเลขแต่ละหลักของตัวเลขได้ เมื่อมีการส่งค่าตัวเลขหนึ่งค่า เราต้องเพิ่มอักขระ '0' เพื่อให้ได้แบบฟอร์ม ASCII ให้เราดูโค้ดเพื่อทำความเข้าใจกันดีกว่า
ตัวอย่าง
#include <stdio.h>
void print_long(long value) {
if(value != 0) {
print_long(value/10);
putchar((value%10) + '0');
}
}
main(void) {
long a = 84571;
print_long(a);
} ผลลัพธ์
84571