Cara Membaca String di C. Bahasa pemrograman C tidak menyediakan tipe data string yang sebenarnya. Dalam C, sebuah string ditiru oleh array karakter yang diakhiri dengan NULL. Array seperti itu dapat dideklarasikan secara statis atau sebagai pointer. Standar C menyediakan banyak fungsi untuk memanipulasi array karakter atau string C. Artikel ini berfokus pada fungsi yang membaca dari aliran input dan dari file. Ikuti tip berikut untuk mempelajari cara membaca string di C.
Langkah 1
Pahami dasar-dasarnya. Sebuah string C adalah array dari tipe grafik. Seperti semua array C, elemen pertama diindeks pada 0, dan yang terakhir pada "panjang string dikurangi 1." Biasanya, kompiler menyisipkan NULL di lokasi terakhir, sehingga string dapat menampung "panjang string dikurangi 1" elemen. Null setara dengan 0x00 dalam bentuk integer dan '\0' dalam bentuk char. Elemen diakses oleh operator "[]". Langkah 2 mengilustrasikan konsep-konsep ini.
Video Hari Ini
Langkah 2
Tambahkan "sertakan arahan" di bawah ini ke file sumber apa pun sebelum menggunakan fungsi tutorial ini:
#sertakan < stdio.h >
Langkah 3
Mendeklarasikan string C. Kode di bawah ini menunjukkan deklarasi menggunakan metode statis dan pointer:
// deklarasi statis char str[50] = {0}; // cara singkat untuk menginisialisasi semua elemen ke 0 // str[49] is NULL // str memiliki kapasitas untuk 48 karakter // deklarasi dengan pointer char pStr = NULL; // tidak ada alokasi memori pStr = (char)malloc (50); // ini dilakukan oleh "malloc()"
Langkah 4
Baca data menjadi string C menggunakan "scanf()," yang membaca serangkaian string yang dipisahkan oleh spasi dari standar masukan dan menempatkannya di alamat milik variabel referensi yang sesuai, menurut "format rangkaian":
int n; printf("Masukkan Nama Depan dan Umur Anda: "); scanf("%s%d", str, &n); // printf("Nama Anda %s dan Anda %d lama\n", str, n);
Langkah 5
Masukkan data ke dalam string C menggunakan fungsi "gets()" yang lebih sederhana, yang membaca data dari input standar ke dalam string saja:
printf("Masukkan Nama Belakang Anda: "); mendapat (str); printf("Nama Anda %s\n", str);
Langkah 6
Baca data file menjadi string C menggunakan "fscanf()"; fungsi ini analog dengan "scanf()":
FILE* pFile; pFile = fopen("filesaya.txt", "r"); // menganggap file ada dan memiliki data if (NULL != pFile) { fscanf (pFile, "%s", str); printf("Kata pertama dalam file adalah %s\n", str); fclose (pFile); }
Langkah 7
Ulangi Langkah 5 menggunakan "fgets()," yang bekerja sama dengan "gets()":
FILE* pFile; pFile = fopen("filesaya.txt", "r"); if (NULL != pFile) { fgets (pFile, str); printf("Kata pertama dalam file adalah %s\n", str); fclose (pFile); }
Hal yang Anda Butuhkan
C/C++ IDE atau C compiler
Buku tentang C, seperti "The C Programming Language" oleh Brian W. Kernighan
Tip
Untuk mempelajari lebih lanjut tentang fungsi yang disebutkan, kunjungi situs web C Plus Plus.
Peringatan
Jangan mencoba untuk mengkompilasi kode ini. Ini hanya dimaksudkan untuk menunjukkan fungsi. Ini bukan program yang koheren dan akan memberikan kesalahan saat dikompilasi.