Edisi pembelajaran bahasa Indonesia. Kode dan keluarannya tetap seperti aslinya.
Penanganan berkas dalam C
Buka, tulis, baca, dan tutup berkas menggunakan fungsi pustaka standar.

fopen mengembalikan stream atau NULL jika gagal. Mode menentukan pembacaan, penambahan, atau penggantian isi; mode w dapat mengosongkan berkas yang sudah ada. Periksa hasil sebelum memakai fprintf, fgets, atau operasi lain.
Kendalikan perulangan berdasarkan hasil fungsi pembaca, bukan pemeriksaan feof sebelum membaca. fgets memerlukan ukuran buffer dan dapat membaca baris panjang secara bertahap. Bedakan akhir berkas dari kesalahan bila diperlukan.
Tutup stream dengan fclose dan periksa kesalahan penulisan. Pada kompiler jarak jauh, berkas mungkin hanya ada selama satu eksekusi: ini bukan penyimpanan permanen atau akses ke berkas komputer Anda.
Kode C
#include <stdio.h>
#include <stdlib.h>
int main(void) {
const char *filepath = "/tmp/demo_output.txt";
FILE *fout = fopen(filepath, "w");
if (fout == NULL) {
perror("Error opening file for writing");
return EXIT_FAILURE;
}
fprintf(fout, "Hello from the online C compiler file sandbox!\nLine 2: Ephemeral file storage.\n");
fclose(fout);
FILE *fin = fopen(filepath, "r");
if (fin == NULL) {
perror("Error opening file for reading");
return EXIT_FAILURE;
}
char buffer[256];
printf("--- File Content Readout ---\n");
while (fgets(buffer, sizeof(buffer), fin) != NULL) {
printf("%s", buffer);
}
fclose(fin);
return EXIT_SUCCESS;
}Buka di kompilerKeluaran yang diharapkan
--- File Content Readout --- Hello from the online C compiler file sandbox! Line 2: Ephemeral file storage.
Pertanyaan umum
Mengapa kode dan keluarannya tetap dalam bahasa Inggris?
Kata kunci, pengenal, dan teks yang diperiksa tes dipertahankan agar program tidak berubah. Penjelasan dan kontrol telah diterjemahkan.