วันเสาร์ที่ 18 มิถุนายน พ.ศ. 2554

ฟังก์ชัน getch( )

เป็นฟังก์ชันที่ใช้รับข้อมูลเพียง  1 ตัวอักขระเหมือนกับฟังก์ชัน getchar( )  แตกต่างกันตรงที่เมื่อใช้ฟังก์ชันนี้รับข้อมูล  ข้อมูลที่ป้อนเข้าไปจะไม่ปรากฏให้เห็นบนจอภาพและไม่ต้องกดแป้น  enter  ตาม 
            รูปแบบการใช้งานฟังก์ชัน

getch( );
หรือ         char_var = getch( );
     
            โดยที่

getch( )  คือ ฟังก์ชันที่ใช้รับข้อมูลเพียง  1  ตัวอักขระจากคีย์บอร์ด  โดยฟังก์ชันนี้จะไม่มี  argument  ดังนั้นอาจจะใช้  getch(void)  แทนคำว่า  getch( )  ก็ได้  แต่นิยมใช้  getch( )  มากกว่า
char_var  คือ  ตัวแปรชนิด  char  ซึ่งจะเก็บข้อมูล  1  ตัวอักขระที่ป้อนผ่านทางคีย์บอร์ด
            เพื่อให้เกิดความเข้าใจการใช้งานฟังก์ชัน  getch( )  ได้ดียิ่งขึ้นควรศึกษาโปรแกรมตัวอย่างที่  3.5  ดังต่อไปนี้
โปรแกรมตัวอย่างที่  3.5  แสดงโปรแกรมการใช้ฟังก์ชัน  getch( ) 
 
 
/*          getch1.c            */
#include<stdio.h>                                                                           /*  บรรทัดที่  1  */
#include<conio.h>                                                                          /*  บรรทัดที่  2  */
void main(void)                                                                                 /*  บรรทัดที่  3  */
{                                                                                                           /*  บรรทัดที่  4  */
      char  ch;                                                                                /*  บรรทัดที่  5  */
      clrscr( );                                                                                 /*  บรรทัดที่  6  */
      printf("Enter a single character : ");                                  /*  บรรทัดที่  7  */
      ch = getch( );                                                                       /*  บรรทัดที่  8  */
      printf("\nYou type a character is ...%c \n",ch);                /*  บรรทัดที่  9  */
      getch( );                                                                                 /*  บรรทัดที่  10 */
}
 
 


ผลลัพธ์ที่ได้จากโปรแกรม

 
คำอธิบายโปรแกรม
            การทำงานของโปรแกรมตัวอย่างที่  3.5  จะคล้ายกับโปรแกรมตัวอย่างที่  3.4  ต่างกันตรงคำสั่งบรรทัดที่  8  จะเป็นการใช้ฟังก์ชัน   getch( )  คือ  ch = getch( );  ให้นำค่าที่รับมาเก็บไว้ในตัวแปร  ch  ซึ่งเวลาเรารับข้อมูลจากคีย์บอร์ดจะไม่ปรากฎข้อมูลที่เราป้อนเข้าไปให้เห็น บนจอภาพ  และไม่ต้องกด  enter  ตาม  โปรแกรมก็จะไปทำงานคำสั่งบรรทัดที่  9  คือ  นำข้อมูลที่เก็บในตัวแปร  ch  มาแสดงตรงตำแหน่ง  %c  และขึ้นบรรทัดใหม่  ส่วนคำสั่งบรรทัดที่  10  ฟังก์ชัน  getche( );  โปรแกรมก็จะหยุดรอรับค่าใด ๆ  จากคีย์บอร์ด  เช่น  เรากด  enter  ก็จะกลับเข้าสู่โปรแกรม

ไม่มีความคิดเห็น:

แสดงความคิดเห็น