😈
ReverseMe
  • Introduction
  • References
  • ReverseMe
    • Introduction
      • What is Reverse Engineering?
      • Legality of Reverse Engineering
      • Reverse Engineering Communities
  • Programming Language
    • C
      • Basic
        • Pointer
        • Casting
      • Reference
        • stdio.h
          • fclose()
          • fopen()
          • fseek()
          • ftell()
          • fgetc()
          • fgets()
          • fread()
          • fprintf()
          • fwrite()
          • printf()
          • putchar()
          • puts()
          • sprintf()
          • snprintf()
        • stdlib.h
          • malloc()
          • calloc()
          • realloc()
          • free()
          • rand()
          • srand()
        • string.h
          • strcat()
          • strncat()
          • strcmp()
          • strncmp()
          • strcpy()
          • strncpy()
        • time.h
          • time()
  • Reversing Fundamentals
    • Stripped and Unstripped
  • Tools
    • file
    • strings
    • ltrace
    • ghidra
  • CTF Writeups
    • HackTheBox Challenges
      • Baby RE
      • You Cant C Me
  • ABOUT ME
    • Mail
    • LinkedIn
    • GitHub
Powered by GitBook
On this page
  • Sintaks
  • Contoh Penggunaan
  • 1. Membaca karakter demi karakter dari file
  • Catatan Penting
  1. Programming Language
  2. C
  3. Reference
  4. stdio.h

fgetc()

Membaca satu karakter dari file dalam C

Fungsi fgetc() digunakan untuk membaca satu karakter dari file yang telah dibuka. Fungsi ini sangat berguna untuk membaca file secara karakter per karakter, terutama saat memproses file teks.

Sintaks

int fgetc(FILE *stream);
  • stream âžœ Pointer ke file yang sudah dibuka (tipe FILE *).

  • Mengembalikan:

    • Nilai karakter (dalam bentuk integer) jika pembacaan berhasil.

    • EOF (End Of File) jika mencapai akhir file atau terjadi kesalahan.

Contoh Penggunaan

1. Membaca karakter demi karakter dari file

#include <stdio.h>

int main() {
    FILE *file = fopen("data.txt", "r");  // Buka file untuk membaca

    if (file == NULL) {
        printf("File tidak ditemukan!\n");
        return 1;
    }

    int ch;
    printf("Isi file:\n");

    // Membaca file karakter demi karakter hingga mencapai EOF
    while ((ch = fgetc(file)) != EOF) {
        putchar(ch);  // Menampilkan karakter ke layar
    }

    fclose(file);
    return 0;
}

Hasilnya:

Isi file:
Hello, World!

Catatan Penting

  1. EOF:

    • EOF bukanlah karakter yang valid dalam file, melainkan sebuah indikator bahwa pembacaan telah mencapai akhir file atau terjadi kesalahan.

  2. Penggunaan dalam Loop:

    • Pastikan untuk menggunakan fgetc() dalam loop yang memeriksa EOF agar tidak terjadi infinite loop.

  3. Tipe Pengembalian:

    • fgetc() mengembalikan nilai bertipe int untuk menampung kemungkinan nilai EOF.

Previousftell()Nextfgets()

Last updated 2 months ago