Langsung ke konten
KamusNgoding
Pemula Cpp 3 menit baca

Variabel dan Tipe Data di C++

#cpp #variabel #tipe-data #int #float #string #bool #const

Variabel adalah tempat penyimpanan data dalam program. Bayangkan variabel seperti sebuah kotak berlabel — kamu beri nama kotaknya, tentukan ukurannya (tipe data), lalu isi dengan nilai. Di C++, kamu harus menentukan tipe data terlebih dahulu sebelum menggunakan variabel. Di artikel ini kita akan mempelajari semua tipe data dasar C++ beserta cara penggunaannya.

Mendeklarasikan Variabel

Sintaks dasar deklarasi variabel di C++:

tipe_data nama_variabel = nilai;

Contoh:

#include <iostream>
using namespace std;

int main() {
    int umur = 25;
    double tinggi = 175.5;
    char huruf = 'A';
    bool aktif = true;

    cout << "Umur: " << umur << endl;
    cout << "Tinggi: " << tinggi << endl;
    cout << "Huruf: " << huruf << endl;
    cout << "Aktif: " << aktif << endl;

    return 0;
}
// Output:
// Umur: 25
// Tinggi: 175.5
// Huruf: A
// Aktif: 1

Perhatikan: bool dicetak sebagai 1 (true) atau 0 (false).

Tipe Data Numerik

Integer (Bilangan Bulat)

int angka = 100;          // 4 byte, kisaran: -2,147,483,648 s/d 2,147,483,647
short kecil = 32000;      // 2 byte, kisaran: -32,768 s/d 32,767
long panjang = 1000000L;  // 4 byte (setidaknya)
long long sangat_besar = 9000000000LL; // 8 byte

// Cek ukuran tipe data
cout << "Ukuran int: " << sizeof(int) << " byte" << endl;
// Output: Ukuran int: 4 byte

Gunakan unsigned jika nilainya tidak pernah negatif:

unsigned int populasi = 4000000000; // bisa menyimpan hingga ~4.2 miliar

Float dan Double (Bilangan Desimal)

float pi_kecil = 3.14f;       // 4 byte, ~7 digit presisi
double pi_besar = 3.14159265; // 8 byte, ~15 digit presisi

cout << "Float: " << pi_kecil << endl;
// Output: Float: 3.14
cout << "Double: " << pi_besar << endl;
// Output: Double: 3.14159265

Tips: Gunakan double untuk kalkulasi keuangan atau saintifik karena presisinya lebih tinggi.

Tipe Data Karakter dan String

char — Satu Karakter

char nilai = 'A';
char angka_char = '7'; // bukan angka 7, tapi karakter '7'

cout << nilai << endl;
// Output: A

// char sebenarnya menyimpan nilai ASCII
cout << (int)nilai << endl;
// Output: 65 (kode ASCII untuk 'A')

string — Kumpulan Karakter

Untuk menggunakan string, tambahkan header <string>:

#include <iostream>
#include <string>
using namespace std;

int main() {
    string nama = "Budi Santoso";
    string kota = "Jakarta";

    cout << "Nama: " << nama << endl;
    // Output: Nama: Budi Santoso

    // Menggabungkan string (concatenation)
    string salam = "Halo, " + nama + "!";
    cout << salam << endl;
    // Output: Halo, Budi Santoso!

    // Panjang string
    cout << "Panjang nama: " << nama.length() << " karakter" << endl;
    // Output: Panjang nama: 12 karakter

    return 0;
}

Tipe Data Boolean

bool login = true;
bool admin = false;

cout << login << endl;  // Output: 1
cout << admin << endl;  // Output: 0

// Untuk mencetak "true"/"false" gunakan boolalpha
cout << boolalpha << login << endl;  // Output: true
cout << boolalpha << admin << endl;  // Output: false

Konstanta dengan const

Jika nilai tidak boleh berubah, gunakan const:

const double PI = 3.14159265;
const int MAX_MAHASISWA = 500;
const string NAMA_UNIVERSITAS = "Universitas Indonesia";

// PI = 3.14; // ❌ Error! Tidak bisa mengubah nilai const

cout << "Pi = " << PI << endl;
// Output: Pi = 3.14159265

Konversi Tipe Data (Type Casting)

Implicit Conversion (Otomatis)

int x = 10;
double y = x; // int otomatis dikonversi ke double
cout << y << endl;
// Output: 10

double harga = 9.99;
int harga_bulat = harga; // double → int, desimal dipotong (bukan dibulatkan)
cout << harga_bulat << endl;
// Output: 9

Explicit Conversion (Manual)

double nilai = 7.8;
int hasil = (int)nilai;         // C-style cast
int hasil2 = static_cast<int>(nilai); // C++ style cast (lebih aman)

cout << hasil << endl;
// Output: 7

Gunakan static_cast<> — cara ini lebih aman karena compiler akan memberikan error jika konversi tidak valid.

Menerima Input dari Pengguna

#include <iostream>
#include <string>
using namespace std;

int main() {
    string nama;
    int umur;

    cout << "Masukkan nama: ";
    cin >> nama;       // membaca satu kata

    cout << "Masukkan umur: ";
    cin >> umur;

    cout << "Halo, " << nama << "! Umur kamu " << umur << " tahun." << endl;

    return 0;
}

Untuk membaca baris penuh yang mengandung spasi, gunakan getline():

string nama_lengkap;
cout << "Masukkan nama lengkap: ";
getline(cin, nama_lengkap);
cout << "Nama: " << nama_lengkap << endl;

Pertanyaan yang Sering Diajukan

Apa perbedaan float dan double?

Keduanya menyimpan bilangan desimal, tapi presisinya berbeda. float memiliki presisi ~7 digit dan ukuran 4 byte, sedangkan double memiliki presisi ~15 digit dan ukuran 8 byte. Untuk kalkulasi yang butuh akurasi tinggi, selalu gunakan double. Tambahkan suffix f saat menginisialisasi float: float x = 3.14f;

Mengapa C++ perlu menentukan tipe data, tidak seperti Python?

C++ adalah bahasa statically typed — tipe data ditentukan saat kompilasi, bukan saat runtime. Ini memungkinkan compiler mengoptimalkan memori dan kecepatan eksekusi. Python bersifat dynamically typed yang lebih fleksibel tapi lebih lambat.

Kapan menggunakan int vs long long?

Gunakan int untuk nilai di bawah ~2 miliar (cukup untuk kebanyakan keperluan). Gunakan long long untuk nilai yang sangat besar seperti ID unik database, kalkulasi finansial skala besar, atau pemrograman kompetitif yang melibatkan angka besar.

Apa itu sizeof()?

sizeof() adalah operator yang mengembalikan ukuran tipe data dalam byte. Contoh: sizeof(int) biasanya mengembalikan 4. Ini berguna saat kamu perlu tahu berapa memori yang digunakan suatu variabel.

Kesimpulan

Berikut ringkasan tipe data dasar C++:

TipeUkuranContoh Nilai
int4 byte42, -100
double8 byte3.14, -0.5
float4 byte3.14f
char1 byte'A', '7'
stringdinamis"Halo"
bool1 bytetrue, false
constsesuai tipenilai tidak bisa diubah

Artikel sebelumnya: Pengenalan C++ — instalasi dan program pertama.

Langkah selanjutnya: Operator dan Ekspresi di C++ — cara melakukan perhitungan dan perbandingan dalam C++.

Artikel Terkait