PENGIDENTIFIKASI, VARIABEL DAN TIPE DATA C++



Sesi ini saya akan membahas lebih detail mengenai pengidentifikasi, variabel dan tipe data sehingga anda lebih mengetahui kenapa sebuah namespace harus ada. Namespace bertujuan untuk tidak terjadi kerancuan saat penggunaan pengidentifikasi, variabel dan tipe data. Mutlak bagi seorang programmer untuk selalu menjaga kaidah-kaidah penggunaan dan penulisan pengidentifikasi, variabel, dan tipe data.
Sebelum membahas lebih dalam, ada baiknya kita membahas terlebih dahulu hal yang sering kita jumpai dalam sebuah coding yang juga tidak kalah pentingnya, yaitu penggunaan pernyataan komentar. Komentar adalah sebuah pernyataan atau baris kode yang tidak akan dieksekusi oleh program. Mungkin anda akan bertanya dalam benak anda, mengapa butuh sebuah pernyataan yang membuat coding atau skrip tetapi tidak dieksekusi? Karena komentar digunakan untuk media dokumentasi atau sebagai penanda, supaya baris program tersebut mudah dipahami dan mudah dibaca alur codingnya. Dengan komentar, anda dapat memberi tulisan pada setiap pengidentifikasi, variabel , dan tipe data berupa kegunaan dan fungsinya.

KOMENTAR //...
Tanda doubel slash (//) diikuti pernyataan berikutnya dalam satu baris tidak akan dieksekusi oleh compiler. Komentar doubel slash (//) merupakan komentar untuk membuat karakter atau pernyataan tidak dieksekusi dengan syarat masih dalam satu baris, sedangkan baris berikutnya dianggap sebagai pernyataan. Contoh sebagai berikut :
//komentar
Tulisan diatas tidak akan dieksekusi oleh program, karena ada tanda double slash (//) didepan pernyataan tersebut. Untuk lebih jelas, saya beri contoh menggunakan aplikasi notped ++ dan menggunakan MinGw-5.1.6, seperti berikut :
                //mengitung luas persegi panjang
Maka pernyataan “menghitung luas persegi panjang”, tidak dieksekusi oleh program. Karena sebelum pernyataan terdapat doubel slash (//) yang merupakan komentar. Komentar tersebut dapat digunakan untuk menamai sebuah alur program. Lain halnya jika komentar ini sampai melebihi baris, maka baris sesudahnya disebut dengan pernyataan. Contoh :
//komentar saya
adalah
Jika komentar seperti diatas, dipastikan programnya eror, karena pernyataan komentar hanya sampai “komentar saya”, sedangkan “adalah” akan dianggap sebagai pengidentifikasi yang keliru penulisannya.
Perlu diingat, karena pernyataan setelah double slash (//) merupakan komentar. Maka jangan sekali-kali meletakkan ditengah-tengah variabel maupun pengidentifikasi. Contoh :
int//komentar saya a;
Penulisan coding diatas akan menyebabkan kesalahan sintaksis dan variabel a akan dianggap sebagai komentar.

KOMENTAR /*............*/
Tanda komentar (/*.....*/) mampu memberikan komentar lebih dari satu baris, berbeda dengan komentar (//) yang hanya satu baris saja. Jadi sepanjang apapun komentarnya selama masih diantara tanda (/*........*/) maka akan dianggap sebagai komentar. Contoh :
/*aku adalah seorang
mahasiswa amikom*/
Pernyataan “aku adalah seorang mahasiswa amikom” merupakan komentar, karena diapit oleh tanda /* meskipun ganti baris, tetap disebuut komentar, yang penting belum ditutup lagi dengan tanda /*. Keunggulan komentar jenis ini dibanding komentar doubel slash adalah komentar ini mampu disisipkan ditengah-tengah skrip atau kode program. Contohnya :
int /*aku adalah seorang
mahasiswa amikom*/ v;
Seorang programmer yang baik akan selalu menggunakan komentar supaya kode yang dibuat dapat dibaca dengan mudah.

PENGIDENTIFIKASI
Pengidenrifikasi (identifier) adalah suatu pengenal atau pengidentifikasi yang anda deklarasikan supaya compiler dapat mengenalinya, dapat berupa variabel, fungsi, konstanta, namespace, kelas, maupun template. Berarti pengidentifikasi adalah segala sesuatu yang diberi nama sendiri yang ridak sama dengan bawaan C++.
Dalam penulisan, C++ memiliki kaidah-kaidah yang harus dipenuhi oleh seorang programmer. Berikut ini adalah kaidah-kaidah penulisan yang harus diketahui oleh seorang programmer.
a.       Bersifat case sensitive, yaitu huruf besar dan kecil dibedakan, sehingga pemanggilan pengidentifikasi harus sama dengan pengidentifikasi tersebut. Contohnya variabel AKU maka pengidentifikasinya harus AKU kalau misalnya aku, maka akan terjadi eror karena yang dideklarasikan adalah AKU sementara aku belum dideklarasikan.
b.      Pengidentifikasi harus karakter, bisa angka tapi tidak boleh diawali dengan angka. Sebagai contoh :
Int 3jj; salah karena pengidentifikasi diawali dengan angka
Int hhjj; benar karena pengidentifikasi berupa karakter
Int hh77h; benar karena angka terletak dibelakang karakter
Int 3476; salah karena berupa angka semua
c.       Pengidentifikasi tidak boleh mengandung spasi, untuk memisah kata spasi, dapat diganti dengan tanda garis bawah (_).
d.      Pengidentifikasi tidak boleh menggunakan karakter khusus atau sering disebut dengan karakter simbol (#, %, @, $ dan lain-lain).
e.      Pengidentifikasi tidak boleh menggunakan kata kunci atau keyword yang telah ada pada bahasa C++. Contoh : int return, int else dan sebagainya.
Berikut pengidentifikasi bawaan dari C++ yang tidak boleh anda gunakan sebagai pengidentifikasi dengan nama  yang sama.
asm
default
for
pascal
switch
char
float
static
auto
do
go to
register
typedef
const
interupt
struct
break
double
huge
return
unio
continue
long
volatile
case
else
if
short
unsigned
extern
near
while
cdecl
enum
int
signed
void
far
sizeof


f.        Hindari pengidentifikasi yang sama dengan fungsi atau kelas yang sama dengan default milik C++.

VARIABEL
Variabel adalah penggidentifikasi yang paling sering anda gunakan dan sering andda jumpai dalam coding. Variabel berperan penting untuk menyimpan nilai. Variabel mem[unyai nilai dinamis atau nilai yang anda dapat ubah sesuai kebutuhan.sebagaimana pengidentifikasi, variabel juga mempunyai kaidah-kaidah penulisan. Berikut adalah bentuk umum dari sebuah variabel:
Tipe_data nama_variabel;
Nama_variabel disebut juga pengidentifikasi yang digunakan untuk nama variabel. Sedangkan tipe_data adalah suatu jenis data dalam suatu variabel. Contohnya: int panjang; float luas; dan sebagainya.
Tipe data bisa juga satu dan nama variabelnya lebih dari satu, tetapi tipe datanya harus sama. Misalnya : int panjang, lebar, luas;
Berarti panjang, lebar dan luas tipe datanya sama yaitu integer.

      A.      Variabel Global
Variabel global adalah variabel yang memiliki karakteristik nilainya dapat diakses oleh seluruh baris kode yang ada disemua dalam batang tubuh program. Variabel ini berada diluar fungsi main.
Untuk lebih jelasnya, saya beri contoh sebagai berikut:


Program diatas menggunakan header iostream. Using namespace std; digunakan utuk mendeklarasikan std atau untuk tidak menulis banyak std pada akhir baris. Int a; adalah pendeklarasi variabel a dengan tipe data integer. Main(){ adalah fungsi utama didalam C++ atau batang tubuh.  cout<<”nilai a: “;cin<<a; digunakan untuk menampilkan nilai a dan disimpan di variabel a. Maka outputnya akan seperti ini:

      
     B.      Variabel Lokal
Variabel lokal adalah variabel yang hanya dikenali dalam 1 fungsi saja. Jadi variabel lokal adalah variabel yang terletak hanya didalam fungsi main(). Berbeda dengan variabel global yang bisa diakses dimana saja, variabel lokal harus mendefinisikan ulang juga anda ingin menggunakannya diluar fungsi. Contoh:


Pada program diatas, variabel a, b, dan hasil di dalam dalam fungsi main. Berarti variabel a, b, dan hasil hanya bisa diakses atau dieksekusi didalam fungsi main saja. Apabila ingin membuat fungsi baru kalau tidak dideklarasikan lagi maka akan terjadi eror. Outputnya seperti ini:



Untuk lebih jelasnya, anda bisa melihat tabel pembanding berikut :
Variabel Lokal
Variabel Global
#preposesor
Fungsi()
{
Variabel_lokal
Inisialisasi variabel lokal
}
Fungsi2()
{
Variabel_lokal
Inisialisasi variabel lokal
}
#preposesor
Variabel Global
Fungsi()
{
Inisialisasi variabel global
}
Fungsi2()
{
Inisialisasi variabel global
}

        Tidak perlu mendeklarasikan ulang pada fungsi lain
Selalu mendeklarasikan ulang jika akan digunakan pada fungsi lain
            Dideklarasikan diluar fungsi
Dideklarasikan

     C.      Inisialisasi Variabel
Inisialisasi adal pemberian nilai dalam variabel. Variabel yang belum diinidialisasi atau belum diberi nilai akan diberikan nilai default oleh compiler C++. Untuk lebih jelasnya saya berikan contohnya :


Pada program diatas, deklarasi variabel a dengan tipe data integer merupakan variabel global karena berada diluar fungsi main. a=5 merupakan pemberian nilai variabel a yang nilai nya adalah 5. Variabel a bernilai 5 hanya berlaku difungsi main, tidak berfungsi di fungsi yang lain. Selanjutnya cout<<”nilai a: “<<a; digunakan untuk menampilkan nilai a, dan memanggil nilai a tersebut. Jadi outputnya seperti berikut:

      
    D.      Konstanta
Konstanta adalah variabel yang memiliki nilai tetap(konstan). Anda akan membutuhkan konsep variabel yang kostan, dimana nilai variabel ini tidak boleh berubah, padahal anda selalu menggunakan variabel  ini.
Kasus penggunaan variabel konstan adalah ketika anda ingin membuat sebuah aplikasi menghitung volume luas lingkaran dengan rumus phi*r*r, nilai phi tetap tidak berubah ubah dimana phi=3,14. Bisa menggunakan cost dan juga define.
Contoh cost:


Dan contoh define:


Dari contoh diatas, outputnya sama yaitu:


Perbedaan const dan define adalah jika const disertai dengan tipe data, sesudah variabel diberi simbol =, dan di akhir baris diberi tanda ;
Kalau define, sebelum define dikasih simbol # tidak perlu dikasi tipe data, sama dengan dan titik koma. Jadi dari contoh diatas bisa kita simpulkan bahwa konstan mempunyai 2 cara yaitu define dan const. Nilai phi akan selalu 3,14 bersifat tetap dan tidak bisa diubah-ubah.


TIPE DATA
Tipe data berfungsi sebagai representasi jenis data dari sebuah nilai yang terdapat dalam program. Terkadang, dalam menuliskan sebuah variabel, anda selalu memberikan jenis data  yang berada dalam sebuah variabel.
1.       Tipe Data Integer
Tipe data ini mempunyai nilai yang tipenya angka atau bilangan bulat. Untuk mendeklarasikan nya dengan menuliskan int. Beberapa tipe data yang termasuk dalam tipe data ini adalah:
Tipe Data
Ukuran (dalam bit)
Rentang
Int
16 atau 32
-32.768 sampai 32.767 atau -2,147,483,648 sampai 2,147,483,647
Unsigned int
16 atau 32
0 sampai 65.353 atau 0 sampai 4,294,967,295
Signed int
16 atau 32
Sama seperti int
Short int
16
-32.768 sampai 32.767
Unsigned short int
16
0 sampai 65.353
Signed short int
16
Sama seperti short int
Long int
32
-2,147,483,648 sampai 2,147,483,647
Signed long int
32
Sama seperti int
Unsigned long int
32
0 sampai 4.294.967.295

2.       Tipe Data Karakter
Tipe ini sangat sering dijumpai pada penulisan sebuah program. Tipe data ini bertujuan menyimpan data berupa karakter ke dalam memori. Notasi penulisan tipe data karakter biasanya menggunakan keyword char diikuti dengan nama variabelnya.
Char nama_variabel;
Jika isi variabel tersebut berisi banyak, maka karakter ditambahkan panjang dimensi dari karakter tersebut.
Char nama_variabel[x];
Nilai x dari tipe data diatas menunjukkan panjang atau jumlah karakter yang akan anda masukkan didalamnya. Penulisan inilah yang disebut string.
3.       Tipe Data Logika atau Boolean
Variabel boolean adalah variabel yang hanya mengenal dua nilai, yaitu True dan False. Tipe data dari variabel logika disebut dengan bool. Bool diambil dari nama George Bool, yaitu orang yang mengembangkan Aljabar Boolean dan tipe data Bool juga dapat ditampilkan  dalam bentuk integer (1 dan 0). Pendefinisian biasanya menggunakan keyword “bool” diikuti nama variabel bool nama_variabel. Variable boolean ini sering digunakan untuk operasi-operasi perbandingan dan operasi logika semacam if, for, while dan lainnya.
4.       Tipe Data Float
Seperti halnya integer, float digunakan untuk memberikan tipe angka tetapi bisa untuk pecahan.

 Referensi : visual C++ 2013,Wahana Komputer, 2015, Andi
                   Microsoft Visual C++ 2010, Wahana Komputer,2011, Andi