Apa Yang Dilakukan Oleh Fungsi Cin.getline() Dalam C++

3 min read Jun 28, 2024
Apa Yang Dilakukan Oleh Fungsi Cin.getline() Dalam C++

Apa yang Dilakukan Fungsi cin.getline() dalam C++?

cin.getline() adalah fungsi yang digunakan dalam bahasa pemrograman C++ untuk membaca string dari input standar, yaitu biasanya dari keyboard. Fungsi ini berbeda dengan cin biasa yang hanya membaca satu kata hingga spasi.

Keunggulan cin.getline() dibandingkan cin Biasa

  • Membaca string dengan spasi: cin.getline() dapat membaca string yang mengandung spasi, sedangkan cin hanya akan membaca satu kata hingga spasi pertama.
  • Membatasi panjang string: cin.getline() memungkinkan Anda menentukan jumlah karakter maksimum yang ingin dibaca, mencegah overflow buffer.

Cara Kerja cin.getline()

Sintaks dasar cin.getline() adalah:

cin.getline(nama_array, ukuran_array, karakter_batas);
  • nama_array: Nama variabel array karakter yang akan menyimpan string yang dibaca.
  • ukuran_array: Jumlah karakter maksimum yang dapat disimpan dalam array, termasuk karakter null (\0) yang ditambahkan secara otomatis di akhir string.
  • karakter_batas (opsional): Karakter yang digunakan untuk mengakhiri pembacaan. Jika tidak ditentukan, karakter newline (\n) akan digunakan sebagai karakter batas.

Contoh Penggunaan cin.getline()

#include 
using namespace std;

int main() {
  char nama[50];

  cout << "Masukkan nama Anda: ";
  cin.getline(nama, 50); 

  cout << "Nama Anda adalah: " << nama << endl;

  return 0;
}

Kode di atas akan meminta pengguna untuk memasukkan nama mereka. Fungsi cin.getline() akan membaca nama hingga karakter newline (\n) ditekan atau hingga 50 karakter telah dibaca (tergantung mana yang terjadi lebih dulu). Kemudian, nama yang dimasukkan akan ditampilkan kembali ke layar.

Peringatan

  • Pastikan ukuran_array cukup besar untuk menyimpan string yang ingin dibaca. Jika tidak, cin.getline() mungkin akan menyebabkan overflow buffer.
  • Gunakan cin.ignore() untuk membersihkan buffer input setelah menggunakan cin.getline() jika Anda ingin menggunakan cin biasa di kemudian hari.

Kesimpulan

cin.getline() merupakan fungsi yang berguna dalam C++ untuk membaca string dengan spasi dan membatasi panjang string. Fungsi ini memberikan fleksibilitas dan kontrol lebih besar dibandingkan dengan cin biasa. Dengan memahami cara kerja dan penggunaan cin.getline(), Anda dapat mengolah input pengguna dengan lebih efektif dalam program C++ Anda.