Algorithm and Programming - Pointers and Arrays - Gerald Stephanus Tamon // 2201743182

Algorithm and Programming

Pertemuan 17 Oktober 2018
Pointers and Arrays

Gerald Stephanus Tamon // 2201743182 // CB01-CL

Pada pertemuan ini, topik yang dibawa adalah Pointer dan Array.

Pointer

Pointer adalah variabel yang menyimpan alamat (address) dari variabel lain.
Syntax untuk Pointer adalah sebagai berikut:
<type> *ptr_name;
Operator yang sering digunakan dalam penggunaan pointer adalah * (isi) dan & (alamat).
Untuk menginisialisasikan sebuah pointer adalah sebagai berikut:
int i, *ptr;
ptr = &i;
Untuk memberikan nilai baru ke variabel yang ditunjuk pointer:
*ptr = 5;          // mengubah nilai i menjadi 5

Konsep dari pointer adalah sebagai berikut:

 

Pointer to Pointer adalah variable yang menyimpan alamat (address) dari pointer lain.
Syntax untuk Pointer to Pointer adalah sebagai berikut:
<type> **ptr_ptr;
Contoh:
int i, *ptr, **ptr_ptr;
                ptr = &i;
                ptr_ptr = &ptr;
Untuk memberikan nilai baru ke pointer yang ditunjuk pointer:
                *ptr = 5;               // i=5 ;
                **ptr_ptr = 9;    // i=9; atau *ptr=9;

Pointer to Pointer:


Array
Array adalah kumpulan nilai-nilai data bertipe sama yang berurutan dan menggunakan nama yang sama. Karakteristik dari array adalah tipe datanya sama (homogen) dan dapat diakses satu per satu (random access).
Syntax untuk array:
            type array_name[value];
Contoh array:
            int A[10];
Komponen dari array:
·         Ada tipe yang ditentukan
·         Identifier (nama array)
·         Operator index (“[ ]”)
·         Nilai dimensi di dalam operator “[ ]”
Index dari suatu array dimulai dari 0
A[0]     A[1]     A[2]     A[3]     A[4]     …

Array dapat diinisialisasi dengan beberapa cara:
1.         int B[ ]={1, 2, 3, 4};
              1          2          3          4
            B[0]     B[1]     B[2]     B[3]
2.         int B[6]={1, 2, 3, 4};
              1          2          3          4          0          0
            B[0]     B[1]     B[2]     B[3]     B[4]     B[5]
Array bisa dipanggil dengan cara berikut:
            A = B[2];          // A = 3;
Array juga bisa dibuat menjadi dua dan tiga dimensi:
            int C[12][8];     // memiliki 12 baris dan 8 kolom

Array of Character
Array yang berisi karakter
Syntax:
            char array_name[value_dim];
Contoh inisialisasi:
            char name[51];
            char ss[20]={‘B’,’I’,’N’,’U’,’S’};             // 20 elemen
            char ss[ ]={‘B’,’I’,’N’,’U’,’S’};                // 5 elemen

String
String adalah Array of Character yang diakhiri dengan ‘\0’ (ASCII = 0). Dalam C, tidak ada tipe data string.
Perbedaan String dan Array of Character:
            char kataS[ ] = “KATA”;                       // string
            char kataA[4] = {‘K’,’A’,’T’,’A’};            // array of character
Pada akhir array kataS ada ‘\0’;

Dalam header string.h terdapat beberapa function:
·         strlen()
o   Panjang dari sebuah string
·         strcpy(s1,s2)
o   Menyalin s2 ke s1
·         strncpy(s1,s2,n)
o   Menyalin n karaker pertama dari s2 ke s1
·         strcat(s1,s2)
o   Menambahkan s2 ke akhir s1
·         strncat(s1,s2,n)
o   Menambahkan n karakter pertama dari s2 ke akhir s1
·         strcmp(s1,s2)
o   Membandingkan nilai dari s1 dan s2. Jika sama, hasilnya 0


Comments