Menu Close

Perbedaan antara struktur dan gabungan dalam C (dengan tabel)

Perbedaan antara struktur dan penyatuan dalam C (dengan tabel)

Dalam bahasa pemrograman C, ada tipe data yang telah ditentukan sebelumnya dan tipe data yang ditentukan pengguna. Contoh tipe data yang ditentukan pengguna adalah struktur dan gabungan dalam C.

Dalam Structure and Union, pengguna dapat menentukan tipe data yang berbeda dan fungsi anggota untuk mengakses semua variabel. Meskipun keduanya mengikuti sintaks yang sama, ada perbedaan besar di antara keduanya.

Dalam Struktur, ukuran total memori sama dengan jumlah ukuran semua tipe data dalam struktur. Sedangkan di Union, ukuran total ruang memori sama dengan ukuran tipe data terbesar di union. Ini adalah salah satu perbedaan terpenting antara struktur dan persatuan.

Misalnya

pekerjaan struktur

{

uang internal;

nama karakter;

} s1;

Dalam hal ini, ukuran memori untuk struktur yang dialokasikan adalah 2 + 1 = 3 byte, karena ukuran integer adalah 1 byte dan ukuran karakter adalah 2 byte. Oleh karena itu, ukurannya akan menjadi 3 byte.

kerja serikat

{

uang internal;

nama karakter;

} s1;

Dalam serikat, ukuran memori yang dialokasikan adalah 2 byte karena ukuran maksimum tipe data dalam serikat adalah 2 byte, yaitu tipe data karakter.

Tabel perbandingan antara struktur dan serikat di C (dalam bentuk tabel)

Parameter untuk membandingkan struktur gabungan

definisi kata kunci

Gunakan kata kunci “serikat”

Gunakan kata kunci “struktur”

ukuran memori

Ukurannya sama dengan elemen terbesar.

Ukuran sama dengan jumlah semua elemen struktur

Berbagi memori

Semua memori elemen dibagi dengan elemen yang berbeda.

Elemen struktur tidak memiliki memori bersama.

akses elemen

Hanya satu elemen yang diakses pada satu waktu

Sejumlah item dapat diakses kapan saja

Contoh

Contoh Serikat
{Data Types and Members} obj;

contoh struktur
{Tipe data dan anggota} obj;

Apa itu struktur dalam C?

Strukturnya adalah grup data yang ditentukan pengguna dan merupakan kumpulan dari berbagai tipe data. Contoh berikut akan sangat membantu. Misalkan seorang programmer perlu menyimpan beberapa data seperti siswa, nama, kelas, alamat, dan banyak lagi.

Nah, ada dua cara untuk mendekati masalah ini, satu dengan membuat tipe data yang berbeda dan satu lagi dengan membuat struktur.

Di sini, dalam hal ini, struktur akan menguntungkan karena jika Anda membuat variabel secara terpisah, maka Anda perlu membuat banyak variabel untuk setiap siswa, dan itu akan menjadi kekacauan. Sebaliknya, struktur dapat digunakan berulang kali.

Sebuah struct dapat dibuat menggunakan kata kunci, struct.

Misalnya

struktur structure_name {

tipe data nama_tipe data;

tipe data nama_tipe data;

tipe data nama_tipe data;

tipe data nama_tipe data;

};

Jika Anda ingin mengakses salah satu anggota data, Anda harus membuat objek seperti

struktur structure_name_object_name;

Dengan sintaks object_name.datatype_name Anda dapat mengakses tipe data dalam struktur.

C-frame

Apa itu Union di C?

Mirip dengan penyatuan struktur, ada tipe data lain yang ditentukan pengguna dalam bahasa pemrograman C. Setiap kali programmer mendefinisikan penyatuan, tipe data yang ditentukan pengguna dibuat, tetapi tidak ada lokasi memori.

Nah, jika Anda ingin mengalokasikan memori, Anda perlu membuat variabel di serikat. Union memiliki properti yang tidak mengizinkan pemrogram mana pun untuk mengakses lebih dari satu tipe data.

Oleh karena itu, dalam penyatuan, seorang programmer dapat mengakses satu anggota data dalam satu waktu. Mari kita ambil contoh kecil.

serikat union_name

{

Tipe data Nama tipe data;

Tipe data Nama tipe data;

Tipe data Nama tipe data;

Tipe data Nama tipe data;

};

Dalam contoh di atas, struktur gabungan dasar ditampilkan. Ini adalah cara seorang programmer membuat serikat pekerja. Jika Anda ingin mengakses semua jenis data di serikat pekerja, Anda harus menggunakannya. operator seperti struktur.

Union union_name objname; Dengan pernyataan di atas, Anda dapat membuat objek yang akan membantu Anda mengakses data anggota mana pun di serikat menggunakan operator titik.

C-bersama

Perbedaan utama antara struktur dan penyatuan dalam C

  1. Struktur adalah tipe data yang ditentukan pengguna yang menyimpan tipe data dari tipe yang berbeda. Juga, ini digunakan untuk mewakili kumpulan nilai tipe data. Jika seorang programmer perlu mendefinisikan serikat pekerja, maka seorang programmer perlu menggunakan struktur kata kunci. Sementara serikat membutuhkan kata kunci serikat untuk definisinya.
  2. Dalam struktur, semua tipe data disimpan di lokasi yang berbeda, dan Anda dapat mengakses beberapa anggota data. Sedangkan dalam gabungan semua anggota data berbagi lokasi memori yang sama dan hanya satu anggota data yang dapat diakses dalam satu waktu.
  3. Dalam struktur, untuk menginisialisasi anggota mana pun, banyak anggota dapat diinisialisasi sekaligus, tetapi dalam kasus penyatuan, hanya anggota pertama yang dapat diinisialisasi.
  4. Ukuran total struktur bergantung pada jumlah ukuran semua anggota data, sedangkan dalam kasus gabungan, ukurannya sama dengan anggota data yang ukurannya terbesar di antara semuanya.
  5. Dalam struktur, setiap tipe data memiliki alokasi memori yang berbeda, sedangkan dalam gabungan, ada satu memori yang dialokasikan untuk anggota data terbesar.

Kesimpulan

Struktur dan gabungan adalah tipe data yang ditentukan pengguna yang digunakan dalam pemrograman c. Struktur dan serikat berbagi konsep yang sama menyimpan berbagai jenis data. Dan semua tipe data dalam struktur dan gabungan diakses dengan operator titik.

Struktur dan gabungan hanya berbeda dalam hal ukuran dan alokasi memori, tetapi kasus penggunaannya sama. Keduanya meningkatkan penggunaan kembali kode dan banyak lagi. Jika Anda ingin menyimpan banyak nilai untuk satu tipe data, struct dan union akan berguna.

Kasus penggunaan dasar untuk struct dan union adalah saat Anda perlu menyimpan catatan pekerja. Sebuah struct atau union akan menyimpan semua data dalam struct atau union tersebut, dan kemudian Anda dapat menyimpan atau mengakses data tersebut. Perbedaan utama terletak pada alokasi memori dan akses tipe data.

Awan kata untuk perbedaan antara struktur dan penyatuan dalam C

Berikut ini adalah kompilasi istilah yang paling banyak digunakan dalam artikel ini tentang Struktur dan Penyatuan dalam C. Ini akan membantu Anda mengingat istilah terkait seperti yang digunakan dalam artikel ini di tahap selanjutnya.

Awan kata untuk struktur dan penyatuan dalam C

Referensi

  1. Susunan struktur di C – Fresh2Refresh
  2. Struktur dan Penggabungan – Tutorial C | Intellipaat.com
  3. Serikat pekerja dalam pemrograman C: definisi dan contoh

Cobalah kuis TI