Perbedaan Antara Struktur Dan Persatuan Di C

Daftar Isi:

Perbedaan Antara Struktur Dan Persatuan Di C
Perbedaan Antara Struktur Dan Persatuan Di C

Video: Perbedaan Antara Struktur Dan Persatuan Di C

Video: Perbedaan Antara Struktur Dan Persatuan Di C
Video: SNI 1729 :2020 Spesifikasi untuk Bangunan Gedung Baja Struktural (ANSI/AISC 360 - 16 IDT) 2024, Mungkin
Anonim

Perbedaan Utama - Struktur vs Persatuan di C

Array adalah data yang terstruktur yang didukung oleh bahasa C. Sebuah array dapat digunakan untuk menyimpan elemen data dengan tipe yang sama. Jika ada pernyataan sebagai tanda int [10]; kemudian tanda adalah larik yang dapat menyimpan sepuluh tanda dan semuanya adalah bilangan bulat. Terkadang diperlukan menyimpan elemen data dari tipe yang berbeda di lokasi memori yang sama. Misalnya, seorang karyawan dapat memiliki ID karyawan, nama, departemen, usia, dll. Mereka memiliki tipe data yang berbeda. Oleh karena itu, diperlukan suatu metode untuk menyimpan berbagai elemen data sebagai satu kesatuan. Structures and Unions in C digunakan untuk menyimpan elemen data dari tipe yang berbeda di lokasi memori yang sama. Struktur dan penyatuan serupa tetapi mereka membedakan terutama karena alokasi memori. Memori yang dibutuhkan untuk menyimpan variabel struktur adalah penjumlahan dari ukuran memori semua anggota. Memori yang dibutuhkan untuk menyimpan variabel union adalah memori yang dibutuhkan untuk elemen terbesar dalam union. Itulah perbedaan utama antara struktur dan penyatuan di C. Artikel ini membahas perbedaan antara struktur dan penyatuan di C.

ISI

1. Ikhtisar dan Perbedaan Utama

2. Apa itu Struktur di C

3. Apa itu Persatuan di C

4. Persamaan Antara Struktur dan Persatuan di C

5. Perbandingan Berdampingan - Struktur vs Persatuan dalam C dalam Bentuk Tabular

6. Ringkasan

Apa Struktur di C?

Struktur adalah tipe data yang ditentukan pengguna di C. Ini membantu untuk menggabungkan item data dari tipe yang berbeda. Sebuah struktur dapat merepresentasikan record. Seorang siswa dapat memiliki student_id, student_name, dll. Daripada menyimpan setiap variabel secara terpisah, semua item data yang berbeda ini dapat dipadatkan menjadi satu unit menggunakan struktur. Ini didefinisikan menggunakan kata kunci 'struct'. Dalam sebuah struktur, semua anggotanya dapat diakses kapan saja. Berikut ini membuat tipe data struct Student yang diturunkan.

struct Mahasiswa {

intstudent_id;

char student_name [20];

};

Untuk struktur di atas, variabel dapat dideklarasikan sebagai berikut.

struct Mahasiswa mahasiswa1, mahasiswa2, mahasiswa3;

Ada dua metode untuk mengakses anggota struktur. Yaitu dengan menggunakan operator anggota (.) Dan operator penunjuk struktur (->). Anggota dapat diakses menggunakan structure_variable_name. nama anggota. Jika programmer ingin mengakses nama siswa 2, maka dia dapat menulis pernyataan sebagai printf (student2.student_namename);

Lihat program di bawah ini dengan struktur.

Perbedaan Antara Struktur dan Persatuan di C
Perbedaan Antara Struktur dan Persatuan di C

Gambar 01: Program C dengan struktur

Menurut program di atas, Mahasiswa adalah sebuah struktur. Ini berisi student_id dan student_name. Dua variabel tipe struktur dideklarasikan dalam program utama. Mereka disebut pelajar1 dan pelajar2. Id pelajar1 ditetapkan dengan nilai 1 menggunakan operator anggota sebagai pelajar1.student_id = 1. Nama “Ann” adalah string. Oleh karena itu, itu disalin ke anggota student_name menggunakan fungsi salinan string strcpy. Id dan nama diberikan ke siswa2 dengan cara yang sama. Terakhir, nilai-nilai tersebut dicetak menggunakan operator anggota.

Jumlah memori yang dibutuhkan untuk menyimpan variabel struktur adalah jumlah dari ukuran memori semua anggota. Student_id berisi 4 byte dan student_name berisi 20 byte (masing-masing satu byte untuk sebuah karakter). Total 24 byte adalah jumlah ukuran memori yang dibutuhkan oleh struktur.

Apa itu Union in C?

Serikat adalah tipe data yang ditentukan pengguna di C. Ini membantu untuk menyimpan tipe data yang berbeda di lokasi memori yang sama. Buku dapat memiliki properti seperti nama_buku, harga, dll. Alih-alih membuat variabel untuk masing-masingnya, gabungan dapat digunakan untuk memadatkan semua tipe data yang berbeda ke dalam satu unit menggunakan gabungan. Ini didefinisikan menggunakan kata kunci 'union'. Berikut ini membuat data union Book yang diturunkan.

unionBook {

nama karakter [20];

harga ganda;

};

Untuk gabungan di atas, variabel dapat dideklarasikan sebagai berikut.

serikat Buku book1, book2;

Ada dua metode untuk mengakses anggota serikat. Yaitu dengan menggunakan operator anggota (.) Dan operator penunjuk struktur (->). Anggota dapat diakses menggunakan union_variable_name. nama anggota. Jika programmer ingin mengakses nama book1, maka ia dapat menulis pernyataan sebagai printf (book1.name);

Lihat program di bawah ini dengan serikat pekerja.

Perbedaan Antara Struktur dan Persatuan di C Figure 02
Perbedaan Antara Struktur dan Persatuan di C Figure 02

Gambar 02: Program C menggunakan union

Menurut program di atas, Buku itu adalah satu kesatuan. Book1 adalah variabel dari gabungan tipe. Nama dan harga diberi nilai. Dalam serikat, hanya satu anggotanya yang dapat diakses dalam satu waktu dan semua anggota lainnya akan memiliki nilai sampah. Nilai id tidak tercetak dengan benar tetapi nilai harga tercetak dengan benar.

KeyDifference Antara Struktur dan Union di C
KeyDifference Antara Struktur dan Union di C

Gambar 03: Program C yang dimodifikasi dengan serikat pekerja

Menurut program di atas, Buku adalah persatuan. Book1 dan book2 adalah variabel tipe gabungan. Pertama, nilai untuk nama book1 diberikan dan dicetak. Kemudian nilai untuk nama book2 ditetapkan dan dicetak. Semua anggota mencetak dengan benar karena satu anggota digunakan dalam satu waktu. Memori yang dibutuhkan untuk menyimpan sebuah serikat adalah memori yang dibutuhkan untuk elemen terbesar dari serikat tersebut. Dalam program di atas, variabel nama adalah 20 byte. Ini lebih besar dari harga. Jadi, alokasi memori untuk penyatuan adalah 20 byte.

Apa Persamaan Antara Struktur dan Persatuan di C?

  • Baik Structure maupun Union in C adalah tipe data yang ditentukan pengguna.
  • Baik Structure dan Union in C dapat digunakan untuk menyimpan tipe data yang berbeda di lokasi memori yang sama.

Apa Perbedaan Antara Struktur dan Persatuan di C?

Artikel Diff Tengah sebelum Tabel

Struktur vs Persatuan di C

Struktur adalah tipe data yang ditentukan pengguna dalam bahasa C yang memungkinkan penggabungan data dari tipe yang berbeda secara bersamaan. Union adalah tipe data yang ditentukan pengguna dalam bahasa C yang memungkinkan penggabungan data dari tipe yang berbeda secara bersamaan.
Aksesibilitas
Dalam suatu struktur, semua anggotanya dapat diakses kapan saja. Dalam sebuah serikat, hanya satu anggotanya yang dapat diakses pada satu waktu dan semua anggota lainnya akan mengandung nilai sampah.
Alokasi memori
Memori yang dibutuhkan untuk menyimpan variabel struktur adalah penjumlahan dari ukuran memori semua anggota. Memori yang dibutuhkan untuk menyimpan variabel union adalah memori yang dibutuhkan untuk elemen terbesar dalam union.
Kata kunci
Kata kunci yang digunakan untuk mendefinisikan sebuah struktur adalah 'struct'. Kata kunci yang digunakan untuk mendefinisikan serikat adalah 'serikat'.

Ringkasan - Struktur vs Persatuan di C

Sebuah array digunakan untuk menyimpan elemen data dengan tipe yang sama. Terkadang perlu untuk menyimpan elemen data dari tipe yang berbeda di lokasi memori yang sama. Bahasa pemrograman C menyediakan struktur dan gabungan untuk menyelesaikan tugas ini. Keduanya adalah tipe data yang ditentukan pengguna. Memori yang dibutuhkan untuk menyimpan variabel struktur adalah penjumlahan dari ukuran memori semua anggota. Memori yang dibutuhkan untuk menyimpan variabel union adalah memori yang dibutuhkan untuk elemen terbesar dalam union. Inilah perbedaan antara struktur dan penyatuan di C.

Direkomendasikan: