C ทำงานห้องสมุด - ungetc ()
ลักษณะ
C ทำงานห้องสมุดungetc int (int ถ่านไฟล์ * สตรีม) ถ่านตัวอักษร (ตัวอักษรไม่ได้ลงนาม)จะถูกผลักเข้าไปในกระแสกระแสที่ระบุไว้เพื่อที่จะต่อไปที่จะอ่านในตัวละคร
คำแถลง
นี่คือประกาศ ungetc () ฟังก์ชั่นของ
int ungetc(int char, FILE *stream)
พารามิเตอร์
- ถ่าน - ซึ่งจะผลักดันให้เป็นตัวอักษรลักษณะของ int ค่าที่สอดคล้องกันผ่าน
- กระแส - นี้เป็นตัวชี้ไปยังแฟ้มชี้ไปยังวัตถุที่ระบุวัตถุสตรีมใส่ไฟล์
ราคาย้อนกลับ
หากประสบความสำเร็จก็จะส่งกลับผลักเข้าไปในตัวละครมิฉะนั้นจะส่งกลับ EOF และกระแสยังคงไม่เปลี่ยนแปลง
ตัวอย่าง
ตัวอย่างต่อไปนี้แสดงให้เห็นถึง ungetc () ฟังก์ชั่นถูกนำมาใช้
#include <stdio.h> int main () { FILE *fp; int c; char buffer [256]; fp = fopen("file.txt", "r"); if( fp == NULL ) { perror("打开文件时发生错误"); return(-1); } while(!feof(fp)) { c = getc (fp); /* 把 ! 替换为 + */ if( c == '!' ) { ungetc ('+', fp); } else { ungetc(c, fp); } fgets(buffer, 255, fp); fputs(buffer, stdout); } return(0); }
สมมติว่าเรามีfile.txt ไฟล์ข้อความอ่านเป็นดังนี้เป็นตัวอย่างของไฟล์ให้ป้อน:
this is w3cschool !c standard library !library functions and macros
Let 's รวบรวมและเรียกใช้โปรแกรมข้างต้นซึ่งจะส่งผลต่อไปนี้:
this is w3cschool +c standard library +library functions and macros +library functions and macros