ที่นี่เราจะมาดูวิธีการพิมพ์ค่า 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