Tutorial Pengenalan Pointer (revisi 120925-r01)

  • Buat program cobapointer.c dengan isi di bawah ini. Ganti [nama_anda] dengan nama anda (contoh: Ramot Stephanus) dan [NPM_anda] dengan NPM anda (contoh: 1202000818) tanpa tanda kurung siku. Ganti TOKEN dengan token anda.
    $ vi cobapointer.c
    i

    // Saya, [nama_anda] dengan NPM [NPM_anda], 
    // mengetik sendiri program ini. Saya bisa mengetik, yey! \:D/
    // ZCZC TOKEN
    
    #include <stdio.h>
    
    int jj, kk;
    int *ptr;
    
    int main(void)
    {
        jj = 1;
        kk = 2;
        ptr = &kk;
        printf("\n");
        printf("jj has the value %d and is stored at %p\n", jj, (void *)&jj);
        printf("kk has the value %d and is stored at %p\n", kk, (void *)&kk);
        printf("ptr has the value %p and is stored at %p\n", ptr, (void *)&ptr);
        printf("The value of the integer pointed to by ptr is %d\n", *ptr);
    
        return 0;
    }

    [Esc]
    :wq
  • Compile menjadi berkas executable cobapointer.
    $ gcc -o cobapointer cobapointer.c
  • Jalankan program cobapointer dan rekam output ke berkas cobapointer.txt, lihat hasilnya.
    $ ./cobapointer > cobapointer.txt
    $ cat cobapointer.txt

    jj has the value 1 and is stored at 0x8049740
    kk has the value 2 and is stored at 0x8049748
    ptr has the value 0x8049748 and is stored at 0x8049744
    The value of the integer pointed to by ptr is 2
  • Isi dari alamat (0xnnnnnnn) dapat berbeda-beda sesuai dengan alokasi memori terhadap program anda.
  • Dari tutorial pointer ini, anda diharapkan mengerti bahwa isi variabel pointer (ptr) adalah alamat dari variabel (kk). Kita dapat mengakses isi variabel kk dengan mengakses variabel pointer ditambah tanda * di depannya (*ptr).
  • Demikian akhir Tutorial Pengenalan Pointer.

Kembali ke Lab 2
Kembali ke Wiki