POINTER DAN ARRAY
17/10/2018
HI CODER,
Saya masih pemula mohon maklum :),
Pengertian Pointer
- Pointer adalah suatu variabel yang menunjuk ke alamat memory variabel yang lainnya.
- Suatu pointer bukan berisi dengan suatu nilai data seperti halnya pada variabel biasa, variabel pointer berisi dengan suatu alamat.
- Untuk mendeklarasikan variabel pointer kita menggunakan tanda asterik / bintang (*) didepan variabel yang di deklarasikan pada tipe data tertentu.
- Tanda ini juga dapat dipakai untuk mengakses nilai dari variabel yang telah ditunjuk.
- Untuk mendapatkan alamat dari variabel pointer kita menggunakan tanda &
Deklarasi & Isi
Deklarasi variabel pointer seperti halnya deklarasi variabel lainnya hanya ditambahkan tanda * pada depan nama variabel.
int *b
Untuk mendapatkan alamat memori pointer (address of) maka perintah yang digunakan adalah menambahkan tanda & didepan variabel
&b
Untuk mendapatan Isi atau nilai dari variabel pointer maka perintah yang digunakan cukup nama variabelnya saja.
b
Untuk mendapatkan isi atau nilai dari alamat yang terdapat pada isi pointer (value pointed by) maka perintah yang digunakan adalah menambahkan tanda * didepan variabel
*b
Dikutip dari : http://onestringlab.com/pointer-dalam-bahasa-c/
Dari pembelajaran Algorithm and Programming
Saya belajar tentang pointer dari kelas besar saya belajar untuk mengetahui cara menggunakan pointer untuk pengertiannya bisa di liat dibagian atas yang saya kutip dari website agar lebih mudah untuk paham mari saya tunjukkan apa yang saya pelajari dari pointerdengan koding:
POINTER:
#include <stdio.h>
int main()
{
int angka1 = 3;
int *angka2;
int *angka3;
int *angka4;
//* single pointer
// angka4 = angka3 = angka2 = angka1;
angka2 = &angka1;
//angka ngasal karena isinya alamat angka1
angka3 = &angka1;
angka4 = &angka1;
//*: content of
//&: address of
printf("%d", *angka4)
getchar();
return 0;
}
Bisa kita lihat dikomen pada program C diatas terdapat penjelasannya
bahwa pointer digunakan untuk menunjuk atau untuk memasukkan semua content pointer dari sebuah int ke address.
#include <stdio.h>
int main()
{
int angka1 = 3;
int *angka2;
int **angka3; // untuk pointer ke pointer harus lebih banyak bintangnya
int ***angka4;
//* single pointer
// angka4 = angka3 = angka2 = angka1;
angka2 = &angka1;
//angka ngasal karena isinya alamat angka1
angka3 = &angka2;
angka4 = &angka3;
//*: content of
//&: address of
*angka2 = 10;
//angka 4 ikut berubah
printf("%d", ***angka4)
getchar();
return 0;
}
jika pointer saling memasukkan adrress (seperti contoh diatas) maka pointer selanjutnya akan ikut ganti.
**angka3 = 10;
//angka 4 ikut berubah
--------------------------------------------------------------------------------------------------------------------------
17/10/2018
HI CODER,
Saya masih pemula mohon maklum :),
Array adalah tempat kosong yang dapat diisi oleh suatu angka, Array dapat menyimpan banyak angka tergantung dari yang kita inginkan, misalkan array[10] , maka akan ada 10 ruang kosong yang dapat diisi, karena Array bermula dari 0, jadi array[10] terdiri dari array[0] hingga array[9].
Dikutip dari : https://pentofu.wordpress.com/2016/03/05/fungsi-array-dalam-bahasa-c/
Saya belajar tentang array dari kelas besar saya belajar untuk mengetahui cara menggunakan array untuk pengertiannya bisa di liat dibagian atas yang saya kutip dari website agar lebih mudah untuk paham mari saya tunjukkan apa yang saya pelajari dari array dengan koding:
#include <stdio.h>
int main()
{
int a = 15;
char str[]="abcd";
printf("%s %d",str,a);
return 0;
}
Dengan contoh diatas kita dapat simpulkan bahwa array adalah tempat menampung sebuah variabel.
Array dibagi menjadi beberapa bagian ada yang 1 dimensi, 2 dimensi , 3 dimensi, dll.
Untuk array yang dua dimensi:
#include <stdio.h>
#include <stdlib.h>
int main()
{
//array 30 mahasiswa baris x kolom
char NIM[3][11]; //'paling belakang \0'
//char NIM[30][11][tinggi] untuk 3 dimensi
int jumlahAbsen[3];
char x;
for(int i=0;i<3;i++)
{
scanf("%d",&jumlahAbsen[i]);
scanf("%c",&x);
}
for(int i=0;i<3;i++)
{
printf("%d", jumlahAbsen[i]);
}
getchar();
return 0;
}
Diatas dapat kita simpulkan bahwa array 2 dimensi itu seperti membuat indeks / tempat menampung baris dengan kolom jadi seperti koding diatas ada [3] = 3 baris dan [11] = 11 kolom.
Untuk yang tiga dimensi sesuai dengan komen diatas diberi tambahan tinggi jadi variabel[baris][kolom][tinggi].
--------------------------------------------------------------------------------------------------------------------------
Demikian kelas pointer dan array yang saya pelajari
Sekian dan Terima Kasih.
HAPPY CODING!
Komentar
Posting Komentar