C struct (Struktur)

Dalam tutorial ini, Anda akan belajar tentang tipe struct dalam Pemrograman C. Anda akan belajar mendefinisikan dan menggunakan struktur dengan bantuan contoh.

Dalam pemrograman C, struct (atau struktur) adalah kumpulan variabel (bisa dari berbagai jenis) di bawah satu nama.

Bagaimana cara mendefinisikan struktur?

Sebelum Anda dapat membuat variabel struktur, Anda perlu menentukan tipe datanya. Untuk mendefinisikan struct, structkata kunci digunakan.

Sintaks dari struct

 struct structureName (dataType member1; dataType member2;…); 

Berikut ini contohnya:

 struct Person (char name (50); int citNo; float gaji;); 

Di sini, tipe turunan struct Persondidefinisikan. Sekarang, Anda dapat membuat variabel jenis ini.

Buat variabel struct

Ketika tipe struct dideklarasikan, tidak ada penyimpanan atau memori yang dialokasikan. Untuk mengalokasikan memori dari tipe struktur tertentu dan bekerja dengannya, kita perlu membuat variabel.

Inilah cara kami membuat variabel struktur:

struct Person (char name (50); int citNo; float gaji;); int main () (struct Person person1, person2, p (20); return 0;)

Cara lain untuk membuat variabel struct adalah:

 struct Person (char name (50); int citNo; float gaji;) person1, person2, p (20); 

Dalam kedua kasus, dua variabel person1, person2, dan variabel array p yang memiliki 20 elemen tipe struct Persondibuat.

Akses anggota struktur

Ada dua jenis operator yang digunakan untuk mengakses anggota struktur.

  1. . - Operator Anggota
  2. -> - Operator penunjuk struktur (akan dibahas di tutorial berikutnya)

Misalkan, Anda ingin mengakses gaji person2. Inilah cara Anda melakukannya.

 person2. gaji

Contoh: Tambahkan dua jarak

 // Program to add two distances (feet-inch) #include struct Distance ( int feet; float inch; ) dist1, dist2, sum; int main() ( printf("1st distance"); printf("Enter feet: "); scanf("%d", &dist1.feet); printf("Enter inch: "); scanf("%f", &dist1.inch); printf("2nd distance"); printf("Enter feet: "); scanf("%d", &dist2.feet); printf("Enter inch: "); scanf("%f", &dist2.inch); // adding feet sum.feet = dist1.feet + dist2.feet; // adding inches sum.inch = dist1.inch + dist2.inch; // changing to feet if inch is greater than 12 while (sum.inch>= 12) ( ++sum.feet; sum.inch = sum.inch - 12; ) printf("Sum of distances = %d\'-%.1f "", sum.feet, sum.inch); return 0; )

Keluaran

 Jarak ke-1 Masukkan kaki: 12 Masukkan inci: 7,9 Jarak ke-2 Masukkan kaki: 2 Masukkan inci: 9,8 Jumlah jarak = 15'-5.7 "

Kata kunci diketik

Kami menggunakan typedefkata kunci untuk membuat nama alias untuk tipe data. Ini biasanya digunakan dengan struktur untuk menyederhanakan sintaks mendeklarasikan variabel.

Kode ini

struct Jarak (kaki int; inci float;); int main () (struct Jarak d1, d2;)

setara dengan

typedef struct Jarak (int kaki; float inci;) jarak; int main () (jarak d1, d2;)

Struktur Bersarang

Anda dapat membuat struktur dalam suatu struktur dalam pemrograman C. Sebagai contoh,

struct kompleks (int imag; float real;); nomor struct (struct kompleks comp; int integer;) num1, num2;

Misalkan, Anda ingin menyetel imag dari variabel num2 menjadi 11. Berikut cara melakukannya:

 num2.comp.imag = 11; 

Mengapa struct di C?

Misalkan, Anda ingin menyimpan informasi tentang seseorang: namanya, nomor kewarganegaraan, dan gajinya. Anda dapat membuat nama variabel yang berbeda, citNo dan gaji untuk menyimpan informasi ini.

Bagaimana jika Anda perlu menyimpan informasi lebih dari satu orang? Sekarang, Anda perlu membuat variabel berbeda untuk setiap informasi per orang: nama1, citNo1, gaji1, nama2, citNo2, gaji2, dll.

Pendekatan yang lebih baik adalah dengan mengumpulkan semua informasi terkait di bawah satu Personstruktur nama dan menggunakannya untuk setiap orang.

Lebih lanjut tentang struct

  • Struktur dan petunjuk
  • Meneruskan struktur ke suatu fungsi

Artikel yang menarik...