[ad_1]
Enumerasi atau Enum dalam C yaitu jenis tipe knowledge khusus yang ditentukan oleh pengguna. Ini terdiri dari integral konstan atau bilangan bulat yang diberi nama oleh pengguna. Penggunaan enum di C untuk memberi nama nilai integer membuat keseluruhan program mudah dipelajari, dipahami, juga dipelihara oleh programmer yang sama atau bahkan dengan cara yang berbeda.
ADVERTISEMENT
SCROLL TO RESUME CONTENT
Sintaks untuk Mendefinisikan Enum di C
Enum didefinisikan dengan cara kata kunci 'enum' di C, juga penggunaan koma memisahkan konstanta di dalamnya. Sintaks dasar untuk mendefinisikan enum yaitu:
enum enum_nama{int_const1, int_const2, int_const3, …. int_constN};
Pada sintaks di atas, nilai default int_const1 yaitu 0, int_const2 yaitu 1, int_const3 yaitu 2, juga seterusnya. Tetapi, Anda dan bisa mengubah nilai default ini saat mendeklarasikan enum. Di bawah ini yaitu contoh enum bernama mobil juga bagaimana Anda bisa mengubah nilai defaultnya.
enum mobil{BMW, Ferrari, Jeep, Mercedes-Benz};
Di sini, nilai default untuk konstanta yaitu:
BMW=0, Ferrari=1, Jeep=2, juga Mercedes-Benz=3. Tetapi, untuk mengubah nilai default, Anda bisa mendefinisikan enum sebagai berikut:
enum mobil{
bmw=3,
Ferrari=5,
jip=0,
Mercedes-Benz=1
};
Deklarasi Tipe Terhitung untuk Membuat Variabel
Mirip dengan tipe knowledge yang telah ditentukan sebelumnya seperti int juga char, Anda dan bisa mendeklarasikan variabel untuk enum juga tipe knowledge lain yang ditentukan pengguna. Berikut cara membuat variabel untuk enum.
kondisi enum (benar, salah); //mendeklarasikan enum
kondisi enum e; //membuat variabel dengan kondisi tipe
Misalkan kita telah mendeklarasikan tipe enum bernama situation; kita bisa membuat variabel untuk tipe knowledge itu seperti yang dikatakan di atas. Kita dan bisa menggabungkan kedua pernyataan itu juga menuliskannya sebagai:
kondisi enum (benar, salah) e;
Untuk pernyataan di atas, nilai default untuk true yaitu 1, juga untuk false yaitu 0.
Cara Membuat juga Mengimplementasikan Enum di Program C
Sekarang setelah kita mengetahui cara mendefinisikan enum juga membuat variabel untuknya, mari kita melihat beberapa contoh untuk memahami cara mengimplementasikan enum dalam program C.
Baca Serta: Fitur Paling Penting Bahasa C yang Harus segera Anda Ketahui
Contoh 1: Mencetak Nilai Hari Kerja
#termasuk
enum hari{Minggu=1, Senin, Selasa, Rabu, Kamis, Jumat, Sabtu};
ke dalam utama(){
// mencetak nilai hari kerja
for(int i=Minggu;i<=Sabtu;i++){
printf(“%d, “,i);
}
kembali 0;
}
Keluaran:
Pada kode di atas, kita mendeklarasikan enum nama hari yang terdiri dari nama hari kerja yang berawal dari hari Minggu. Kami kemudian menginisialisasi nilai hari Minggu menjadi 1. Ini akan menetapkan nilai untuk hari-hari lainnya sebagai nilai sebelumnya ditambah 1. Untuk mengulangi enum juga mencetak nilai setiap hari, kami telah membuat perulangan for juga menginisialisasi nilainya bagi saya sebagai hari Minggu.
Contoh 2: Menetapkan juga Mengambil Nilai Khusus Elemen Enum
#termasuk
wadah enum{
lanjutan1 = 5,
lanjutan2 = 7,
lanjutan3 = 3,
lanjutan4 = 8
};
ke dalam utama(){
// Menginisialisasi variabel untuk menampung enum
enum kontainer cur_cont = cont2;
printf(“Nilai cont2 yaitu = %dn”,cur_cont);
cur_cont = lanjutan3;
printf(“Nilai cont3 yaitu = %dn”,cur_cont);
cur_cont = lanjutan1;
printf(“Nilai hati = %dn”,cur_cont);
kembali 0;
}
Keluaran:
Kami telah mendeklarasikan wadah bernama enum dengan empat wadah dengan cara yang berbeda seperti elemen dalam kode di atas. Kami kemudian memberikan nilai khusus ke elemen juga menginisialisasi variabel untuk enum beberapa kali untuk mencetak keluaran yang relevan.
Bagaimana Cara Memakai Anum di C?
Kita memakai enum untuk konstanta, adalah ketika kita ingin suatu variabel hanya memiliki sekumpulan nilai tertentu. Misalkan saja, untuk enum hari kerja, memungkinkan hanya ada tujuh nilai akibat memungkinkan hanya ada tujuh hari dalam seminggu. Tetapi, suatu variabel hanya bisa mendatanya satu nilai dalam satu waktu. Kita bisa memakai enum di C untuk berbagai tujuan; beberapa kegunaan enum yaitu:
- Untuk mendatanya nilai konstan (andaikan, hari kerja, bulan, arah, warna pelangi)
- Untuk memakai flag di C
- Saat memakai pernyataan switch-case di C
Contoh Penggunaan Enum dalam Pernyataan Transfer Case
Dalam contoh ini, kita segera akan membuat enum dengan keempat arah, Utara, Timur, Barat, juga Selatan sebagai konstanta. Kami kemudian akan memakai pernyataan change case untuk beralih di antara elemen arah juga mencetak output berdasarkan nilai variabel untuk arah enum.
#termasuk
enum arah{Utara=1, Timur, Barat, Selatan};
ke dalam utama(){
enum arah d;
d=Barat;
beralih(d){
kasus Utara:
printf(“Kita menuju ke Utara.”);
merusak;
kasus Timur:
printf(“Kita Menuju Timur.”);
merusak;
kasus Barat:
printf(“Kita menuju ke arah Barat.”);
merusak;
kasus Selatan:
printf(“Kita Menuju Selatan”);
merusak;
}
kembali 0;
}
Keluaran:
Contoh Penggunaan Enum di C untuk Flags
Kita bisa memakai enum di C untuk flag dengan menjaga nilai konstanta integral pangkat 2. Hal ini memungkinkan kita untuk membuat pilihan juga menggabungkan dua flag atau lebih tanpa tumpang tindih dengan bantuan operator Bitwise OR (|). Mari kita perhatikan contoh di bawah ini di mana kita menetapkan tiga garis: Pangkas, Putar, juga Simpan untuk bekerja dengan gambar.
Contoh:
#termasuk
enum desainBendera{
TANAMAN = 1,
PUTAR = 2,
SIMPAN = 4
};
ke dalam utama() MENYIMPAN;
printf(“%d”,contohsaya);
kembali 0;
Keluaran:
Jika kita melakukan perhitungan untuk kode di atas, maka hasilnya yaitu:
00000010 (PUTAR = 2)
| 00000100 (HEMAT = 4)
____________
00000110 (Keluaran = 6)
Seperti yang Anda melihat, perhitungan kami juga keluaran yang diberikan oleh program ini sama. Ini menyimpulkan bahwa kita bisa memakai enum di C untuk flag. Serta, kita bisa menambahkan bendera khusus kita.
Poin Menarik Tentang Inisialisasi Enum di C
Ada sejumlah fakta tentang enum yang perlu diperhatikan, seperti:
1. Beberapa nama atau elemen enum bisa mempunyai nilai yang sama. Berikut contoh dua elemen enum yang mempunyai nilai serupa.
Contoh:
#termasuk
enum Mobil{Jeep = 1, BMW = 0, Mercedes_Benz = 0};
ke dalam utama(){
printf(“%d, %d, %d”, Jip, BMW, Mercedes_Benz);
kembali 0;
}
Keluaran:
2. Jika kita sepertinya tidak menetapkan nilai khusus ke elemen enum, kompiler akan menetapkan nilai default mulai dari 0. Misalkan saja, kompiler akan menetapkan nilai ke bulan pada contoh di bawah, dengan Januari menjadi 0.
Contoh:
#termasuk
enum Bulan{Januari, Februari, Maret, April, Mei, Juni, Juli, Agustus, September, Oktober, November, Desember};
ke dalam utama(){
enum Bulan m = Mei;
printf(“Nilai Bulan Mei dalam Bulan yaitu %d”, m);
kembali 0;
}
Keluaran:
3. Kami bisa memberikan nilai ke elemen enum mana pun dalam urutan apa pun. Semua elemen yang belum ditetapkan akan dapatkan nilai seperti sebelumnya + 1. Program berikut memperlihatkan hal yang sama.
Contoh:
#termasuk
enum hari kerja {Minggu, Senin = 2, Selasa, Rabu = 6, Kamis, Jumat = 9, Sabtu = 12};
ke dalam utama()
{
printf(“%d %d %d %d %d %d %d”, Minggu, Senin, Selasa,
Rabu, Kamis, Jumat, Sabtu);
kembali 0;
}
Keluaran:
4. Semua nilai yang diberikan pada elemen enum harus segera berupa konstanta integral. Misalkan saja, bilangan itu harus segera berada dalam kisaran bilangan bulat minimal juga maksimum yang mungkin saja.
5. Semua elemen atau konstanta enum harus segera mempunyai cakupan yang unik. Artinya suatu elemen sepertinya tidak bisa menjadi bagian dari dua enum dengan cara yang berbeda dalam program yang sama akibat akan gagal selagi kompilasi. Berikut ini contohnya:
Contoh:
#termasuk
enum Mobil{Mahindra, Jeep, BMW};
enum Mobil_Mewah{BMW, Ferrari, Mercedes_Benz};
ke dalam utama(){
kembali 0;
}
Keluaran:
Enum di C vs. Makro
Mirip dengan enum, Anda dan dapat memakai makro di C untuk mendefinisikan konstanta bernama. Tetapi penggunaan enum di C lebih disukai akibat mempunyai cukup banyak keunggulan dibandingkan makro. Dua manfaat utamanya yaitu:
- Enums mematuhi aturan 'ruang lingkup' seperti yang dibahas sebelumnya (di poin terakhir bagian sebelumnya).
- Kompiler bisa secara otomatis memberikan nilai ke elemen enum. Untuk alasan itu, deklarasi menjadi lebih mudah.
Kesimpulan
Pada artikel ini, Anda telah mempelajari segala sesuatu tentang enum di C juga cara menggunakannya secara dengan cara yang berbeda. Jika Anda ingin mengetahui lebih cukup banyak tentang dasar-dasar pemrograman C, Anda bisa mendaftar di platform SkillUp kami. Platform ini menawarkan kursus tanpa biaya tentang berbagai bahasa pemrograman, termasuk C juga C++. Anda bisa mengambil kesempatan ini untuk memoles keterampilan pemrograman C Anda juga mempraktikkannya.
Dalam dunia yang kompetitif sementara waktu, permintaan full-stack developer lebih tinggi dibandingkan profesional yang menguasai bahasa tertentu. Untuk alasan itu, sangat penting untuk mempelajari juga menguasai berbagai bahasa pemrograman. Untuk itulah Pengembang Complete Stack kami – MERN Stack dibuat. Kursus ini menyediakan instructional juga pembelajaran terapan untuk mengenal 30+ keterampilan juga alat pemrograman. Pilihlah kursus untuk menjadi yang sangat bagus juga dapatkan pekerjaan bergaji tinggi di bidang pengembangan perangkat lunak.
FAQ
1. Apa maksudnya dengan tipe knowledge enum di C?
Enum, kependekan dari enumeration, yaitu tipe knowledge yang ditentukan pengguna dalam pemrograman C. Hal ini memungkinkan pengembang untuk membuat kumpulan konstanta bernama, yang dikenal sebagai enumerator, masing-masing dihubungkan dengan nilai integer. Pencacahan menyediakan sarana untuk menetapkan nama simbolik ke konstanta integral, dengan begitu sangat meningkatkan keterbacaan juga pemeliharaan kode.
2. Bagaimana Anda mendefinisikan enum di C?
Untuk mendefinisikan enum di C, Anda memakai kata kunci enum diikuti dengan sebutan enumerasi. Di dalam kurung kurawal, enumerator dicantumkan, dipisahkan dengan koma. Enumerator ini mewakili konstanta bernama yang keterkaitan dengan enum. Setiap enumerator secara opsional bisa mempunyai nilai yang ditetapkan, biasanya berawal dari 0 juga bertambah 1 untuk enumerator berikutnya kecuali ditentukan lain secara eksplisit.
3. Bagaimana enum digunakan dalam pemrograman C?
Enum biasanya digunakan untuk mewakili sekumpulan konstanta keterkaitan dengan nama yang bermakna. Mereka secara signifikan meningkatkan keterbacaan kode dengan memberikan label deskriptif untuk nilai integer. Enum terus menerus digunakan dalam pernyataan switch-case, parameter fungsi, juga struktur knowledge untuk meningkatkan kejelasan juga pengorganisasian program.
4. Bisakah enum mempunyai nilai integer tertentu yang ditetapkan ke elemennya?
Memang benar, enum bisa mempunyai nilai integer yang ditetapkan secara eksplisit untuk elemennya. Meski demikian enumerator awal diberi nilai 0 secara default, enumerator berikutnya bertambah sebesar 1. Meski demikian demikian, pengembang tetap mempunyai fleksibilitas untuk menetapkan nilai ke masing-masing enumerator secara langsung, dengan begitu memungkinkan penetapan bilangan bulat yang disesuaikan.
5. Apa keuntungan memakai enum dibandingkan makro di C?
Enum menawarkan keunggulan penting dibandingkan makro. Mereka memastikan keamanan jenis, membatasi nilai yang dikatakan ke kumpulan yang telah ditentukan sebelumnya, juga mengurangi potensi kesalahan. Selain tersebut, enum meningkatkan keterbacaan juga pemeliharaan kode dengan menyediakan representasi simbolis dari konstanta, dengan cara yang berbeda dengan mekanisme substitusi tekstual makro.
[ad_2]
Sumber: simplilearn-com








