Tür Dönüştürme Bölüm 1
Coddy'nin C++ Journey'sinin Temeller bölümünün bir parçası. Ders 14 / 74.
Tür dönüşümü, bir değeri bir veri türünden başka bir veri türüne dönüştürme işlemidir.
C++'ta tamsayıları double değerlere, double değerleri tamsayılara ve daha fazlasına dönüştürebiliriz. İki tür dönüştürme vardır: örtük (otomatik) ve açık (manuel) dönüştürme.
Örneğin Integer to Double:
Örtük (otomatik) dönüştürme:
int number = 5;
double decimal = number; // otomatik olarak 5.0 olur
// hesaplamayla
int x = 7;
double result = x / 2.0; // sonuç 3.5Not: İki int değeri bölünürken C++, tamsayı bölmesi gerçekleştirir: ondalık kısım atılır. Örneğin, 7 / 2 işlemi 3 verir, 3.5 değil. Ondalıklı bir sonuç elde etmek için işlenenlerden en az biri double olmalıdır (örneğin, 7 / 2.0 işlemi 3.5 verir).
Açık (manuel) Dönüştürme Double to Integer:
double decimal = 9.7;
int number = (int) decimal; // 9 olur (ondalık kısım kesilir)
// hesaplama ile
double price = 19.99;
int roundedPrice = (int) price; // 19 olurTercih edilen modern C++ stili: C tarzı dönüştürme olan (int) decimal yerine, daha güvenli olan ve amacınızı daha açık bir şekilde belirten static_cast<>() kullanmak daha iyi bir uygulamadır:
double decimal = 9.7;
int number = static_cast<int>(decimal); // 9 olur (ondalık kısım kesilir)
double price = 19.99;
int roundedPrice = static_cast<int>(price); // 19 olurNot: Burada hem (int) value hem de static_cast<int>(value) aynı sonucu üretir, ancak static_cast<>(), dönüşümü açıkça görünür hâle getirdiği ve derleyici tarafından denetlendiği için modern C++'ta önerilen yaklaşımdır.
Görev
BaşlangıçTür dönüştürmeyi gösteren bir C++ programı yazın. Aşağıdakileri gerçekleştirin:
price değişkenini int türüne dönüştürün ve sonucu intPrice adlı yeni bir değişkende saklayın.
Kendin dene
#include <iostream>
int main() {
// Değişkenleri bildir ve başlat
double price = 99.99;
int intPrice = ?; // double'dan int'e açık dönüşüm
// Değerleri yazdır
std::cout << "Price: " << price << std::endl;
std::cout << "Int Price: " << intPrice << std::endl;
return 0;
}Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Temeller bölümündeki tüm dersler
4Operatörler Bölüm 1
Aritmetik OperatörlerModül OperatörüArtırma/AzaltmaSonradan Artırma/AzaltmaAritmetik KısayollarKarşılaştırma OperatörleriString Karşılaştırma7Giriş/Çıkış Temelleri
cout İfadesicin İfadesiString GirdisiÖzet - 120'ye KadarÖzet - Doğru veya YanlışKendi başına pratik yap: Online C++ derleyicisi