Pointer dan Macro

PENGERTIAN POINTER

Merupakan sebuah variabel yang berisi alamat dari variabel lain. Suatu pointer dimaksudkan untuk menunjukan ke suatu alamat memori sehingga alamat dari suatu variabel dapat diketahui dengan mudah.

Arti pointer dalam bahasa sehari-hari adalah petunjuk atau bisa di bilang penentu atau pointer secara sederhana bisa diartikan sebagai tipe data yang nilainya mengarah pada nilai yang terdapat pada sebuah area memori (alamat memori). Namun dalam bahasa C, Pointer bisa berfungsi sebagai variabel array berarti pointer sebagai penunjuk elemen array ke-0 dalam variabel C.

Operator Pointer

Terdapat dua macam operator pointer yang disediakan oleh C++:
Operator dereference ( & )

Operator ini biasa disebut dengan “address of” atau operator alamat. Dengan menggunakan operator dereference(&) ini, suatu variabel akan menghasilkan alamat lokasi memori.
Operator reference ( * )

Operator ini biasa disebut dengan “value pointed by”. Dengan menggunakan operator reference (*) ini, menghasilkan nilai yang berada pada suatu alamat memori.

Penggunaan Pointer
Dapat digunakan untuk mendeklarasikan variabel bertipe data string tanpa harus dideklarasikan batasan karakternya.
Dapat digunakan dalam penggunaan FUNGSI

PENGERTIAN MACRO

Preprocessor Directives adalah suatu perintah yang termasuk kedalam program, tetapi bukanlah instruksi dari program itu sendiri, tetapi untuk preprocessor. Preprocessor ini dijalankan secara otomatis oleh kompiler, ketika didalam proses penterjemahan (Compile) program berlangsung, didalamnya membuat nilai pembuktian pertama dan menterjemahkan code program didalam kode objek.

1.Buatlah program menghitung pangkat dua serta pangkat tiga dari sebuah bilangan bulat dengan makro. Sebagai input adalah bilangan itu sendiri, sedangkan sebagai output adalah pangkat dua serta pangkat tiga dari bilangan bulat tersebut.

Source Code :

/* #Define 2 */
//MAKRO
#include <iostream>
#include <stdio.h>
#include <conio.h>
#define awal {
#define akhir }
#define mulai() main()
#define cetak cout
#define masuk cin
#define hapus()
#define clrscr()
#define tahan()
#define getch()
#define PANGKAT2 (bil*bil)
#define PANGKAT3 (bil*bil*bil)

using namespace std;

mulai()
{

int bil, pangkat;
hapus();
cetak<<endl;
cetak<<” Program Menghitung Pangat Dua dan Pangkat Tiga “<<endl;
cetak<<” dari sebuah Bilangan Bulat dengan MAKRO “<<endl;
cetak<<“================================================”<<endl;
cetak<<” Masukan Bilangan Bulat : “;masuk>>bil; //INPUT BILANGAN BULAT
cetak<<endl;

//PANGKAT 2
pangkat = PANGKAT2;
cetak<<“===============================”<<endl;
cetak<<” Pangkat Dua dari “<<bil<<” adalah “<<pangkat;
cetak<<endl;
//PANGKAT 3
pangkat = PANGKAT3;
cetak<<” Pangkat Tiga dari “<<bil<<” adalah “<<pangkat<<endl;
cetak<<“===============================”<<endl;

tahan();
}
Next Post Previous Post
No Comment
Add Comment
comment url