Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

พิมพ์การแปลงใน C ++


ที่นี่เราจะดูว่าเทคนิคการแปลงประเภทมีอะไรบ้างใน C ++ การแปลงประเภทส่วนใหญ่มีสองประเภท โดยปริยายและชัดเจน

  • การแปลงประเภทโดยนัย

    นี้เรียกว่าการแปลงประเภทอัตโนมัติ สิ่งนี้ทำโดยคอมไพเลอร์โดยไม่มีทริกเกอร์ภายนอกจากผู้ใช้ สิ่งนี้จะทำเมื่อมีนิพจน์มากกว่าหนึ่งประเภทข้อมูลที่มีอยู่

    ประเภทข้อมูลทั้งหมดได้รับการอัปเกรดเป็นประเภทข้อมูลของตัวแปรขนาดใหญ่

bool -> char -> short int -> int -> unsigned int -> long -> unsigned -> long long -> float -> double -> long double

ในการแปลงโดยนัย อาจสูญเสียข้อมูลบางส่วน ป้ายก็หายได้ เป็นต้น

ตัวอย่าง

#include <iostream>
using namespace std;
int main() {
   int a = 10;
   char b = 'a';
   a = b + a;
   float c = a + 1.0;
   cout << "a : " << a << "\nb : " << b << "\nc : " << c;
}

ผลลัพธ์

a : 107
b : a
c : 108

การแปลงประเภทที่ชัดเจน

นี้เรียกอีกอย่างว่าการหล่อแบบ ที่นี่ผู้ใช้สามารถพิมพ์ผลลัพธ์เพื่อให้เป็นประเภทข้อมูลเฉพาะ ใน C++ เราสามารถทำได้สองวิธี ใช้นิพจน์ในวงเล็บหรือใช้ static_cast หรือ dynamic_cast

ตัวอย่าง

#include <iostream>
using namespace std;
int main() {
   double x = 1.574;
   int add = (int)x + 1;
   cout << "Add: " << add;
   float y = 3.5;
   int val = static_cast<int>(y);
   cout << "\nvalue: " << val;
}

ผลลัพธ์

Add: 2
value: 3