ฟังก์ชันทั้งหมดนี้ใช้เพื่อรับอักขระจากอินพุต และแต่ละฟังก์ชันจะส่งกลับจำนวนเต็มที่แสดงรหัสสถานะด้วย
ต่อไปนี้เป็นข้อแตกต่างที่สำคัญระหว่างฟังก์ชัน getc(), getchar(), getch() และ getche()
getc()
getc() สามารถอ่านอักขระจากสตรีมใดก็ได้ ส่งกลับ EOF เมื่อล้มเหลว
ไวยากรณ์
int getc(FILE *stream);
getchar()
getchar() สามารถอ่านอักขระจากอินพุตมาตรฐานเท่านั้น
ไวยากรณ์
int getchar();
get()
getch() สามารถอ่านอักขระจากอินพุตมาตรฐานได้ แต่ไม่ได้ใช้บัฟเฟอร์ใด ๆ และส่งคืนทันทีโดยไม่ต้องรอให้กดปุ่ม Enter
ไวยากรณ์
int getch();
getche()
getche() ทำงานคล้ายกับ getch() เนื่องจากสามารถอ่านอักขระจากอินพุตมาตรฐานและไม่ใช้บัฟเฟอร์ใด ๆ และส่งคืนทันทีโดยไม่ต้องรอให้กดปุ่ม Enter ต่างกันตรงที่มันพิมพ์ตัวละครด้วย
ไวยากรณ์
int getch();
ตัวอย่าง
#include <stdio.h> #include <conio.h> int main() { printf("%c", getc(stdin)); printf("%c", getchar()); printf("%c", getch()); printf("%c", getche()); return 0; }
ผลลัพธ์
A B C D EE