VARIABEL DAN KONSTANTA DALAM C++

1. Nama Variabel

Nama variabel bisa terdiri dari huruf, angka, dan tanda underscore _, tetapi tidak boleh diawali dengan sebuah angka. Nama variabel juga tidak boleh terdiri dari keyword-keyword dari C++ seperti if, for,else, atau while.

Beberapa Keyword pada C++

and and_eq asm auto bitand
bitar bool break case catch
char class const const_case continue
default delete do double dynamic_cast
else enum explicit export extern
false float for friend goto
if inline int long mutable
namespace new not not_eq operator
or or_eq private protected public
registeed return short signet try
sizeof static_cast struct switch unsigned
template this throw true wchar_t
typedef typeid typename union
using virtual void volatile
while xor xor_eq
reinterpret_cast

nama variabel juga bersifat case sensitif sehingga nama, Nama, NaMa, NAMA, dan namA akan dianggap sebagai nama variabel yang berbeda. Meskipun demikian, pemberian nama variabel seperti itu tidak disarankan karena bisa menyebabkan kebingungan dan kesalahan dalam penulisan program nantinya.

2. Pendeklarasian Tipe Data Variabel

Pada C++ atau bahasa pemrograman yang lain, semua varibael yang akan digunakan dalam program harus dideklarasikan terlebih dahulu. Deklarasi dari variabel memiliki 2 tujuan.

  1. Menentukan tipe dan nama variabel.
  2. Memungkinkan compiler untuk menentukan berapa banyak ruang penyimpanan yang bisa digunakan untuk variabel-variabel tersebut.

int

Merupakan variabel yang dapat menampung nilai positif atau ilai negatif. Ada batasan nilai yang boleh dipergunakan. Pada PC, nilai yang diperbolehkan adalah nilai -32768 sampai 32767.

float

Merupakan variabel yang dapat menampung semua nilai bilangan real, mewakili semua bilangan, dan bilangan dengan pecahan desimal. Jangkauan dari float tergantung pada sistem komputer yang dipakai. Biasanya system 4 byte menggunakan jangkauan mulai -1038 sampai +1038.

char

Tipe ini mewakili suatu karakter tunggal, sebuah huruf, 1 digit, atau tanda baca. Tipe ini biasanya berukuran 1 byte.

Contoh-contoh untuk variabel tersebut adalah :

int     123 -56 0 4645
float   16.315 -0.67 31.567
char    '+' 'A' 'a' '*' '7'

Contoh-contoh pendeklarasian variabel adalah :

int i, j, count;
float sum, product;
char ch;

Deklarasi-deklarasi di atas menentukan i, j, dan count menggunakan tipe integer, sum dan product menggunakan tipe float, dan ch menggunakan tipe char.

Deklarasi sebuah variabel memiliki bentuk umum.

Type Nama_variabel

Type menentukan tipe variabel
Nama_variabel menentukan nama variabel yang

Variabel bisa diinisialisasi pada saat dideklarasikan dengan memberikan nilai-nilai.

contoh

int i, j, count = ();
float sum = ().(), product;
char ch = '7';

yang memberikan nilai () untuk variabel count, dan memberikan nilai ().() untuk variabel sum. Variabel ch diberi nilai awalan berupa karakter 7. Variabel-variabel yang tidak diberi nilai awal tidak akan diberi nilai (tidak diberi nilai()).

Catatan

C++ juga memungkinkan pemrograman untuk menentukan tipe data sendiri (user define data type).
Penentuan itu meliputi juga penentuan class.

3. Mendefinisikan Konstanta pada C++

Ada 3 teknik yang digunakan untuk mendefinisikan konstanta pada C++. Teknik pertama berasal dari bahasa pemrograman C. Konstanta didefinisikan menggunakan preprosesor directive #define. Preprosesor adalah program yang memodifikasi file-file source code pada saat sebelum kompilasi. Prerposesor yang umum digunakan adalah #include yang digunakan untuk menambahkan kode-kode tambahan ke dalam kode program kita. Ada beberapa preprosesor yang lain di antaranya #if dan #endif. Contoh penggunaan preposesor #define:

#define pi 3.14515
#define id_no 12345

Di mana pun variabel-variabel pi dan id_no muncul pada program kita, preprosesor akan menggantinya dengan nilai-nilai yang telah ditentukan sehingga di mana pun pi digunakan, nilainya akan diganti dengan 3.1415. Compiler akan melihat nilai 3.1415 pada baris program dan bukan pi. Teknik itu sudah out of date dan jarang digunakan.

Const

Teknik kedua adalah menggunakan keyword const saat mendeklarasikan variabel. Ketika digunakan, const akan menjaga nilai variabel agar tetap tidak berubah ketika ada baris-baris program yang akan mengubah varibel tersebut.

const float pi = 3.1415
const in id_no = 12345;

Manfaat utama dibandingkan teknik yang pertama, tipe dari konstanta ditentukan. Float untuk pi dan int untuk id_no sehingga compiler bisa melakukan pengecekan tipe.

Enumeration

Teknik ketiga adalah enumeration. Enumeration mendefinisikan tipe baru dan batasan nilai hanya pada kumpulan nilai yang ditentukan oleh programmer. Sebagai contoh:

enum COLOR { RED, BLUE, GREEN};
enum SHAPE { SQUARE, RECTANGLE, TRIANGLE, CIRCLE, ELLIPSE};

Setiap enumerator memiliki nilai integer, kecuali ditentukan nilainya. Enumerator pertama akan memiliki nilai (). Nilai bertambah satu-satu untuk setiap penambahan enumerasi. Sebagai contoh, RED memiliki nilai (), BLUE memiliki nilai 1, dan GREEN memiliki nilai 2. Sementara itu SQUARE bernilai 0, RECTANGLE bernilai 1, dan seterusnya.

Nilai dari setiap enumerator bisa juga ditentukan secara khusus.

enum SHAPE(SQUARE=5, RECTANGLE, TRIANGLE=17, CIRCLE, ELLIPSE);

Disini SQUARE bernilai 5, RECTANGLE bernilai 6, TRIANGLE bernilai 17, CIRCLE bernilai 18, dan ELLIPSE bernilai 19. Kenuntungan dari enumerasi adalah terdapatnya tipe dan batasan nilai yang nantinya akan dicek ketika kompilasi.

Kode yang bisa anda coba

#include <iostream>
using namespace std;
int main()
{
    enum color {RED, GREEN, BLUE};
    color myColor = 5;

    if(myColor == RED)
    {
        cout << "panas" << endl;
    }
    if (myColor == CLUE)
    {
        cout << "dingin" << endl;
    }
    if (myColor == GREEN)
    {
        cout << "sejuk" << endl;
    }

    return 0;
}

Jika program diatas dikompilasi, maka tidak akan dihasilkan output apa pun. Hal itu disebabkan olehvariabel mycolor yang diberi tipe color dengan batasan nilai yang diberikan hanya 0, 1, dan 2 sehingga nilai 5 tidak legal sehingga program tidak memberikan output.

Untuk memberikan pemahaman yang lebih mendalah, mari kita coba baris program berikut

#include <iostream>
#define pi 3.14
using namespace std;
int main()
{
    float luas;
    float jari;
    cout << "isikan nilai jari-jari: ";
    cin >> jari;;
    luas = 4 * pi * jari * jari;
    cout << "Luas BOla:  " << luas;
    return 0;
}

QUIZ

  1. Isikan nilai jari = 10, apakah output programmnya?

  2. Ubahlah deklarasi #define dengan deklarasi const, tetapi output program tetap sama dengan prgram di atas.