Mengenal Karakter dan String Dalam C++

Assalamu'alaikum wr. wb
Sekilas pengetahuan tentang dua (2) hal ini terlihat sangat remeh, namun pengetahuan dasar ini sangat penting karena memiliki persamaan dan perbedaan yang fundamental. Karakter ini merupakan sebuah alphanumeric (a - z & 0 - 9) dan simbol-simbol tertentu misalnya @,#, $, ^ atau *.
Pada umumnya, hampir semua compiler menggunakan ASCII (American Standard Code for Information Interchange) untuk mengubah karakter menjadi bentuk angka maupun sebaliknya (encoding-decoding). ASCII merupakan suatu pengkodean suatu karakter kedalam bentuk angka sebagai standarisasi tentang penerjemahan suatu karakter  menjadi angka maupun sebaliknya dan agar tidak terjadi multi-interpretation terhadap suatu karakter.
Misalnya karakter 'A' dalam ASCII dikodekan sebagai 65 dalam bilangan desimal, maka komputer-komputer atau program yang mendukung ASCII akan merubah kode ASCII 65 menjadi karakter 'A'. Berikut ini adalah tabel konversi dari karakter menjadi kode ASCII dalam bentuk bilangan desimal, hexadesimal, oktal dan biner.

Telah dijelaskan tadi bahwa karakter merupakan sebuah alphanumeric (a -z & 0 - 9) dan simbol-simbol tertentu (misalnya @, #, $, ^ atau *). Jadi sebuah karakter 'A' hanya terdiri dari A sehingga 'aku' bukan merupakan karakter karena terdiri dari karakter 'a', 'k' dan 'u'. 
Kata 'aku' merupakan sebuah string, sedangkan string untaian-untaian dari beberapa karakter (string = untaian). Contoh, jika terdapat sebuah string 'AQIEM Group' maka string tersebut terdiri dari karakter 'A','Q','I','E','M','[spasi]','G','r','o','u','p' yang diuntai atau disambung sehingga menjadi string 'AQIEM Group'.
Dalam pemrograman Bahasa C (pendahulu C++) pada dasarnya hanya terdapat satu tipe data, yaitu tipe data char. Dengan demikian penggunaan string (bisa) dikatakan mustahil karena tipe data ini hanya bisa menampung satu (1) karakter saja. Lalu bagaimana kita mendeklarasikan sebuah string ?
Untuk mendeklarasikan sebuah string kita harus menyediakan variabel sejumlah karakter dalam string tersebut. Bingung ?
Untuk mendeklarasikan sebuah string kita dapat menggunakan array. Secara singkat, array bisa dikatakan sebagai variabel yang mampu menampung nilai n kali variabel biasa. Jadi apabila ada variabel a bertipe data char hanya menampung 1 karakter saja, dengan array a[4] dapat menampung 4 karakter.
Lalu bagaimanakan aplikasinya pada deklarasi string ? Seperti yang telah dijelaskan diatas, untuk mendeklarasikan sebuah string kita harus menyediakan sesuatu yang mampu menampung sejumlah karakter yang terdapat pada string. Dengan array, kita bisa menyediakan 'variabel' sesuai jumlah karakter yang terdapat pada string. Untuk string yang memiliki tiga (3) karakter kita bisa membuat seperti berikut ini :

char a[4] = "aku";
char a[8] = "ada aja";

Kedua deklarasi diatas sah dalam C++ dan tidak akan menghasilkan error pada compile-time. Perhatikan, string aku yang berjumlah tiga dimasukan kedalam array yang menampung 4 karakter ? Kok ? Sebenarnya string dalam C++ selalu diakhiri dengan null character  atau '\0' karakter ini menandakan akhir dari sebuah string.
Selain dengan deklarasi diatas, deklarasi array bisa juga menggunakan cara seperti dibawah ini :

char a[] = "AQIEM Group";

Jika kita mendeklarasikan sebuah string dengan cara seperti diatas, secara otomatis compiler akan mengetahui bahwa dalam array tersebut akan sejumlah 11 string ditambah dengan null character  atau '\0'.
Terdapat cara lain sebenarnya dalam pembuatan string yaitu langsung menggunakan tipe data string. Syarat untuk menggunakan tipe data string adalah dengan cara melampirkan header string yaitu :

#include<string>

Kemudian untuk membuat string tinggal mendeklarasikan seperti pembuatan variabel pada umumnya, sebutkan tipe datanya lalu tulis nama variabel stringnya. Seperti yang terlihat pada contoh dibawah ini :

string ini_string;

Kelebihan tipe data string daripada memakai array adalah ketika kita ingin menggabungkan dua buah string, kita cukup menggunakan operator addition (+). Sementara jika kita menggunakan array, kita harus menggunakan fungsi strcat() atau strncat() dan melampirkn file header strings.h.
Perhatikan contoh program string berikut :
Akan dihasilkan (compile and run) seperti terlihat pada gambar dibawah ini :
Terlihat lebih simple dengan menggunakan string bukan daripada menggunakan perintah strct() atau strncat() ? Hanya dengan menggunakan tanda plus (+) penggabungan sebuah string menjadi lebih mudah. Kelebihan lainnya adalah dengan menggunaka tipe data string, resiko program buffer overflow sangat kecil sekali dibanding menggunakan array of char.
Cukup sekian dulu AG-Friends tentang tutorial C++ untuk kali ini, semoga bermanfaat dan membawa keberkahan. Amin
Salam Semangat Belajar...........
Salam AQIEMGroup!!!
 
Wassalamu'alaikum wr. wb
Ahmad Istakim

Alumni dari jurusan Manajemen Informatika di Universitas Sains Al-Qur'an (UNSIQ ) Wonosobo. Tertarik dalam bidang pendidikan, teknologi komputasi dan disiplin ilmu keislaman ( Tafsir, Hadits, Arudl, Nahwu-Sharaf, Fiqh maupun Aqidah ) - https://s.id/blog-islamQ. Pernah juga mengenyam pendidikan di beberapa pesantren yang ada di Kab. Wonosobo dan Kab. Purworejo

2 Komentar

Lebih baru Lebih lama