Membuat Nilai Variabel Beku Menggunakan Konstanta Bahasa C
// Demonstrasi konstanta
// specifier pada bahasa C
#include <stdio.h>
int main()
{
const int num = 1;
// Modifikasi nilai variabel num
num = 5;
return 0;
}
// In C and C++ internally the default
// type of 'var' is int
enum VARS { var = 42 };
// In C++ 11 (can have any integral type):
enum : type { var = 42; }
// where mytype = int, char, long etc.
// but it can't be float, double or
// user defined data type.
catatan: tipe data enum terbatas hanya pada contoh sebelumnya.
tiga, Menggunakan keyword constexpr: penggunaan constexpr hanya digunakan pada C++ dan tidak digunakan pada bahasa C, dimana penggunaannya untuk mendeklarasikan variabel sebagai sebuah konstanta. Tetapi akan gagal untuk dikompilasi jika inisialisasinya bukan sebuah ekspresi konstanta.
#include <iostream>
int main()
{
int var = 5;
constexpr int k = var;
std::cout << k;
return 0;
}
Karena variabel 'var' bukanlah ekspresi konstanta. Karenanya untuk dapat membuatnya sebagai konstanta, maka variabel 'var' harus dideklarasikan dengan keyword const.
Contoh: C++
// Demonstrasi permasalah-
// an pada 'Macros' C++
#include <iostream>
using namespace std;
#define var 5
int main() {
printf("%d ", var);
#ifdef var
#undef var
// pendefinisian ulang variabel
// var dengan nilai 10
#define var 10
#endif
printf("%d", var);
return 0;
}
// Demonstrasi masalah penggu-
// naan 'macros ' pada bahasa C
#include <stdio.h>
#define var 5
int main()
{
printf("%d ", var);
#ifdef var
#undef var
// pendefinisian ulang nilai
// var dengan nilai 10
#define var 10
#endif
printf("%d", var);
return 0;
}
Catatan: preprocessor dan enum hanya bekerja sebagai konstanta literal dan konstanta integer dan hanya mendefinisikan nama simbol dari konstanta. Namun jika membutuhkan variabel konstanta dengan alamat memori spesifik maka dapat menggunakan 'const' atau 'constexpr' sesuai dengan yang dipersyaratkan.
- Penjelasan Singkat, Integer Promotion Bahasa C [klik]
- Perbandingan Nilai Float Terhadap Nilai Lain pada Bahasa C [klik]
- 6 Jenis Perbedaan Kebutuhan Tipe Data Long pada Bahasa C [klik]
- Tipe Data size_t pada Bahasa C [klik]
- 4 Fakta Menarik Tipe Data dan Modifier pada Bahasa C [klik]
- 3 Perbedaan Tipe Data Float dan Double pada Bahasa C [klik]
- Karakter Aritmatika pada Bahasa C dan C++ [klik]
Apa yang dimaksud dengan konstanta apakah sama dengan keyword conts?
BalasHapusKeyword const atau konstanta digunakan untuk menetapkan apakah nilai variabel yang disimpan adalah konstan, dan selanjutnya informasi tersebut diberitahukan kepada kompilator untuk mencegah supaya nilai tersebut tidak dapat dilakukan perubahan sama sekali.
HapusPada c++ nilai konstanta secara default ditujukan untuk internal linkagea atau tautan internal, yang memungkinkan nilai untuk muncul pada file header.
Keyword const juga dapat digunakan pada saat pendeklarasian pointer pada bahasa C.
Penggunaan const adalah untuk menunjukkan bahwa nilai variabel tersebut tidak dapat diubah atau dimodifikasi sama sekali,
HapusApa yang dimaksud dengan enum pada bahasa C?
BalasHapusPencacahan atau enumeration adalah tipe data yang digunakan untuk menetapkan nama ke konstanta integral yang memuat program mudah untuk dibaca dan dilakukan perawatan. "enum" merupakan keyword yang digunakan untuk mendeklarasikan suatu unumerasi pada bahasa pemrograman. Keyword "enum" juga dapat digunakan untuk mendefinisikan variabel jenis enum.
Hapusaku kira enum itu kelanjutannya enum, tujuh, delapan, hahahahaha
Hapus