Cara Mengatasi Tidak Dapat Menginputkan Spasi Di C++

 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.

Tidak Dapat Menginputkan Spasi Di C++ | www.merakitpc.com

Di program di atas saat kita memasukan string "Menggunakan Spasi" di input pertama, yang tersimpan di variabel input1 adalah "Menggunakan" dan variabel input2 menyimpan "Spasi". Padahal kita belum menginputkan variabel input2. Hal ini dikarenakan aturan satu kata atau one word yang kita bahas di atas tadi. Contoh lainnya adalah saat kita mencoba menginputkan sebuah kalimat, menginputkan beberapa string yang berisi spasi, menginputkan kalimat ke dalam sebuah array dan masih banyak lagi kondisi yang terjadi karena aturan satu kata tadi. Lalu bagaimana kita mengatasi hal ini ?

Solusi Tidak Dapat Menginputkan Spasi Di C++

getline() c++ - www.merakitpc.com



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().

Menggunakan getline() Di C++ | www.merakitpc.com


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.

Posting Komentar