Konversi Tipe Bagian 1
Termasuk bagian Dasar-Dasar dalam perjalanan C++ di Coddy. Pelajaran 14 dari 74.
Type casting adalah proses mengubah nilai dari satu tipe data ke tipe data lainnya.
Dalam C++, kita dapat mengonversi bilangan bulat menjadi bilangan desimal, bilangan desimal menjadi bilangan bulat, dan lainnya. Ada dua jenis casting: implisit (otomatis) dan eksplisit (manual).
Sebagai contoh, Integer to Double:
Konversi tipe implisit (otomatis):
int number = 5;
double decimal = number; // otomatis menjadi 5.0
// dengan perhitungan
int x = 7;
double result = x / 2.0; // result bernilai 3.5Catatan: Saat membagi dua nilai int, C++ melakukan pembagian bilangan bulat: bagian desimalnya dihilangkan. Misalnya, 7 / 2 menghasilkan 3, bukan 3.5. Untuk mendapatkan hasil desimal, setidaknya satu operand harus berupa double (misalnya, 7 / 2.0 menghasilkan 3.5).
Konversi eksplisit (manual) Double to Integer:
double decimal = 9.7;
int number = (int) decimal; // menjadi 9 (bagian desimal dipotong)
// dengan perhitungan
double price = 19.99;
int roundedPrice = (int) price; // menjadi 19Gaya C++ modern yang disarankan: Alih-alih menggunakan cast bergaya C (int) decimal, sebaiknya gunakan static_cast<>(), yang lebih aman dan menunjukkan maksudmu dengan lebih jelas:
double decimal = 9.7;
int number = static_cast<int>(decimal); // menjadi 9 (bagian desimalnya dipotong)
double price = 19.99;
int roundedPrice = static_cast<int>(price); // menjadi 19Catatan: (int) value dan static_cast<int>(value) menghasilkan nilai yang sama di sini, tetapi static_cast<>() adalah pendekatan yang disarankan dalam C++ modern karena konversinya terlihat jelas dan diperiksa oleh compiler.
Tantangan
PemulaTulis program C++ yang menunjukkan konversi tipe. Lakukan hal berikut:
Konversikan variabel price ke int dan simpan hasilnya dalam variabel baru bernama intPrice.
Coba sendiri
#include <iostream>
int main() {
// Deklarasikan dan inisialisasi variabel
double price = 99.99;
int intPrice = ?; // Konversi tipe eksplisit dari double ke int
// Tampilkan nilai-nilainya
std::cout << "Price: " << price << std::endl;
std::cout << "Int Price: " << intPrice << std::endl;
return 0;
}Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
4Operator Bagian 1
Operator AritmetikaOperator ModuloIncrement/DecrementPost Increment/DecrementPintasan AritmetikaOperator PerbandinganPerbandingan String7Dasar-Dasar Input dan Output
Pernyataan coutPernyataan cinInput stringUlasan: Hingga 120Ulasan: Benar atau Salah3Variabel Bagian 2
Deklarasi TipeKonvensi PenamaanUlasan: Inisialisasi VariabelKonversi Tipe Bagian 1Konversi Tipe Bagian 26Pengambilan Keputusan
Pernyataan ifIf - ElsePernyataan switchOperator PercabanganRingkasan - If ElseIf - Else BersarangLatihan sendiri: Compiler C++ online