Struktur




Struktur adalah kumpulan dari variabel-variabel data baik dengan tipe yang sama ataupun berbeda yang dikemas dalam satu wadah kemudian diberi sebuah nama.

1.PENDEFINISIAN & DEKLARASI STRUKTUR
Suatu struktur di deklarasikan dengan cara berikut:

struct nama_struktur
{
   deklarasi variabel;
   ……………
   ………
};

Contoh:
struct data
{
   unsigned char suhu;
   unsigned int kecepatan;
   unsigned char level;
};

Contoh diatas mendefinisikan sebuah struktur dengan nama ‘data’ yang didalamnya terdapat 3 buah variabel yaitu variabel suhu bertipe char tidak bertanda, variabel kecepatan bertipe integer tidak bertanda, dan variabel level bertipe char tidak bertanda.
Selanjutnya setelah struktur didefinisikan barulah kita dapat menggunakannya untuk mendeklarasikan sebuah variabel struktur dengan cara :

struct nama_struktur nama_variabel_struktur;

Contoh:

struct data pengukuran;

Dengan deklarasi diatas berarti kita memiliki sebuah variabel bernama ‘pengukuran’ yang didalamnya mengandung 3 variabel data seperti yang dimiliki oleh struktur ‘data’ yaitu variabel suhu bertipe char tidak bertanda, variabel kecepatan bertipe integer tidak bertanda, dan variabel level bertipe char tidak bertanda.
Inisialisasi nilai awal juga dapat ditentukan untuk variabel-variabel yang terdapat dalam struktur seperti contoh berikut :

Contoh:
struct data pengukuran {10, 20, 30};

---ooo00ooo—

Mendefinisikan sebuah struktur dan mendeklarasikan sebuah variabel struktur dapat dilakukan sekaligus dalam satu baris program dengan cara sebagai berikut :

struct nama_struktur
{
   deklarasi variabel;
   ……………
   ………
} nama_variabel_struktur;

Contoh:

struct data
{
   unsigned char suhu;
   unsigned int kecepatan;
   unsigned char level;
} pengukuran;

Struktur pada contoh diatas memiliki variabel-variabel yang semuanya disimpan dalam memori SRAM. Jika kita menginginkan variabel-variabelnya di simpan di memori Flash atau EEPROM, maka pada pendeklarasiannya diawali dengan kata kunci ‘flash’ atau ‘eeprom’ seperti contoh berikut :

flash struct data
{
   unsigned char suhu;
   unsigned int kecepatan;
   unsigned char level;
} pengukuran;

atau

eeprom struct data
{
   unsigned char suhu;
   unsigned int kecepatan;
   unsigned char level;
} pengukuran;

2. MENGAKSES ANGGOTA STRUKTUR
Untuk mengakses masing-masing anggota struktur dilakukan dengan cara berikut :

[nama_variabel_struktur].[anggota_struktur]

Contoh:
PORTC = pengukuran.suhu;
pengukuran.level = PINA;

3. STRUKTUR ARRAY
Struktur juga dapat didefinisikan dalam bentuk array dengan cara sebagai berikut :

struct nama_struktur nama_variabel_struktur jumlah_elemen;

Contoh:
struct pengukuran[3];

Selanjutnya untuk mengakses anggota strukturnya seperti contoh berikut:

Contoh:
PORTC = pengukuran[0].suhu;
pengukuran[1].level = PINA;
PORTD = pengukuran[2].kecepatan;
pengukuran[3].suhu = PINB;

4. STRUKTUR dan POINTER
Sebuah pointer juga dapat digunakan untuk menunjukan variabel struktur. Dengan menggunakan pointer ini berarti kita dapat menunjuk alamat memori tertentu untuk menyimpan semua variabel-variabel dalam struktur yang merupakan anggotanya. Berikut ini contoh penggunaan pointer untuk menunjuk variabel struktur.

struct data *pointermu;
pointermu = &pengukuran;

Pada contoh diatas, sebuah pointer bernama ‘pointermu’ digunakan untuk menunjuk alamat variabel struktur yang bernama ‘pengukuran’. 



Share on Google Plus

About Robotics University

    Blogger Comment
    Facebook Comment

0 comments:

Post a Comment