Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

ส่งคืนประเภทของ getchar(), fgetc() และ getc() ใน C


รายละเอียดเกี่ยวกับฟังก์ชัน getchar(), fgetc() และ getc() ในการเขียนโปรแกรม C มีดังต่อไปนี้ -

ฟังก์ชัน getchar()

ฟังก์ชัน getchar() รับอักขระจาก stdin ส่งกลับอักขระที่อ่านในรูปแบบของจำนวนเต็มหรือ EOF หากเกิดข้อผิดพลาด

โปรแกรมที่แสดงสิ่งนี้มีดังนี้ −

ตัวอย่าง

#include <stdio.h>

int main (){
   int i;

   printf("Enter a character: ");
   i = getchar();

   printf("\nThe character entered is: ");
   putchar(i);

   return(0);
}

ผลลัพธ์

ผลลัพธ์ของโปรแกรมข้างต้นเป็นดังนี้ −

Enter a character: G
The character entered is: G

ตอนนี้เรามาทำความเข้าใจโปรแกรมข้างต้นกัน

ค่าที่ได้รับโดยใช้ฟังก์ชัน getchar() จะถูกเก็บไว้ใน i ซึ่งเป็นตัวแปรจำนวนเต็ม จากนั้นแสดงค่าอักขระโดยใช้ putchar() ข้อมูลโค้ดที่แสดงเป็นดังนี้ -

int i;

printf("Enter a character: ");
i = getchar();

printf("\nThe character entered is: ");
putchar(i);

ฟังก์ชัน fgetc()

ฟังก์ชัน fgetc() รับอักขระจากสตรีมไฟล์ซึ่งเป็นตัวชี้ไปยังอ็อบเจ็กต์ FILE ฟังก์ชันนี้จะคืนค่าอักขระที่อ่านในรูปของจำนวนเต็มหรือ EOF หากเกิดข้อผิดพลาด

โปรแกรมที่แสดงสิ่งนี้มีดังนี้ −

ตัวอย่าง

#include <stdio.h>

int main (){
   FILE *fp;
   fp = fopen("file.txt", "w");
   fprintf(fp, "Apple");
   fclose(fp);

   int i;

   fp = fopen("file.txt","r");
   
   if(fp == NULL){
      perror("Error in opening file");
      return(-1);
   }

   while((i=fgetc(fp))!=EOF){
      printf("%c",i);
   }

   fclose(fp);
   return(0);
}

ผลลัพธ์

ผลลัพธ์ของโปรแกรมข้างต้นเป็นดังนี้ −

Apple

ตอนนี้เรามาทำความเข้าใจโปรแกรมข้างต้นกัน

ขั้นแรก ไฟล์จะถูกสร้างขึ้นและเก็บข้อมูล "Apple" ไว้ข้างใน จากนั้นไฟล์จะถูกปิด ข้อมูลโค้ดที่แสดงเป็นดังนี้ -

FILE *fp;
fp = fopen("file.txt", "w");
fprintf(fp, "Apple");
fclose(fp);

ไฟล์ถูกเปิดอีกครั้งในโหมดการอ่าน หาก fp เป็น NULL ข้อความแสดงข้อผิดพลาดจะปรากฏขึ้น มิฉะนั้น เนื้อหาของไฟล์จะแสดงโดยใช้ฟังก์ชัน fgetc() ข้อมูลโค้ดที่แสดงเป็นดังนี้ -

fp = fopen("file.txt","r");

if(fp == NULL){
   perror("Error in opening file");
   return(-1);
}

while((i=fgetc(fp))!=EOF){
   printf("%c",i);
}

fclose(fp);

ฟังก์ชัน getc()

ฟังก์ชัน getc() รับอักขระจากสตรีมที่ระบุ ส่งกลับอักขระที่อ่านในรูปแบบของจำนวนเต็มหรือ EOF หากเกิดข้อผิดพลาด

โปรแกรมที่แสดงสิ่งนี้มีดังนี้ −

ตัวอย่าง

#include <stdio.h>

int main (){
   int i;

   printf("Enter a character: ");
   i = getc(stdin);

   printf("\nThe character entered is: ");
   putchar(i);

   return(0);
}

ผลลัพธ์

ผลลัพธ์ของโปรแกรมข้างต้นเป็นดังนี้ −

Enter a character: K
The character entered is: K

ตอนนี้เรามาทำความเข้าใจโปรแกรมข้างต้นกัน

ฟังก์ชัน getc() รับอักขระจากสตรีม stdin ตามที่ระบุ ค่านี้ถูกเก็บไว้ในตัวแปร int i จากนั้นค่าอักขระจะแสดงโดยใช้ putchar() ข้อมูลโค้ดที่แสดงเป็นดังนี้ -

int i;

printf("Enter a character: ");
i = getc(stdin);

printf("\nThe character entered is: ");
putchar(i);