Halo teman-teman sekalian, kembali lagi dengan saya admin blog MerakitPC. Pada artikel ini saya mengupdate sebuah artikel dengan kategori yang sama seperti artikel sebelumnya, yaitu Cpp atau C++. Artikel kali ini berjudul Cara Mengatasi Tidak Dapat Menginputkan Spasi Di C++. Alasan saya mengupdate artikel ini adalah karena saya juga pernah mengalami masalah ketika menginputkan sebuah string yang berisi spasi namun malah berpindah atau tersimpan di variabel lain. Sebelum mencari solusinya mari kita bahas mengapa hal ini bisa terjadi.
Mengapa Kita Tidak Dapat Menginputkan Spasi ?
Alasan mengapa kita tidak dapat menginputkan spasi ke dalam variabel adalah karena function input yang biasa kita gunakan untuk mengambil input yaitu cin menggunakan sebuah header iostream. Dari sumber informasi yang saya dapatkan, standard input stream hanya akan mengambil satu kata saja, dengan kata lain spasi tidak akan diinputkan karena menjadi batas syaratnya yaitu satu kata.
Hal ini biasa kita temui saat memiliki kondisi ingin menginputkan string yang memiliki spasi di dalamnya. Sehingga spasi tersebut tidak dibaca karena syarat di atas. Dan apabila kita memiliki dua variabel berturut dan kita menginputkan sebuah string berisi spasi atau simbol space, maka string setelah spasi akan disimpan ke variabel kedua, dan program untuk menginputkan isi dari variabel kedua dianggap sudah dilakukan. Coba lihat contoh program di bawah ini.
Solusi Tidak Dapat Menginputkan Spasi Di C++
Solusinya adalah menggunkan sebuah function getline(). getline() merupakan fungsi tambahan yang bertujuan agar kita dapat menginputkan sebuah spasi ke dalam variabel. Sesuau namanya, getline() akan mengambil dan menyimpan semua yang berada dalam satu line atau satu baris.
Cara penggunaannya cukup mudah yaitu ketika menggunakan cin kita ganti dengan getline(cin, namavariabelnya);
cin >> input1;
Kita ganti menjadi :
getline(cin, input1);
Bagaimana ? Cukup mudah bukan ?
Subproses getline() memiliki 3 parameter atau argument, namun kita hanya perlu menggunakan atau mengisi 2 parameter saja. Parameter pertama merupakan fungsi yang akan kita gunakan yaitu cin, dan Parameter kedua kita isi dengan nama variabel yang akan menampung string berisi spasi tersebut. Mari kita coba ganti program c++ di atas tadi dengan menggunakan getline().
Seperti yang kita harapkan. Program di atas berhasil menggambil input yang berisi spasi di variabel pertama dan kita juga dapat menginputkan string berisi spasi di variabel kedua. Dan saat kita print output variabelnya juga sesuai yang kita harapkan.
Penutup
Cara di atas merupakan salah satu cara mengatasi tidak dapat menginputkan spasi di c++. Disini saya menggunakan getline() karena cukup mudah digunakan dan pemakaiannya tidak ribet.
Demikianlah artikel saya kali ini, semoga dapat membantu teman-teman sekalian dalam menghadapi masalah seperti ini. Bila ada salah kata saya mohon maaf, sekian dan terima kasih.