logo

Різниця між приведенням типів і перетворенням типів

Два терміни лиття типу і перетворення типу використовуються в програмі для перетворення одного типу даних в інший тип даних. Перетворення типу даних можливе лише компілятором, коли вони сумісні між собою. Давайте обговоримо різницю між приведенням типів і перетворенням типів у будь-якій мові програмування.

Що таке приведення типу?

Коли тип даних перетворюється на інший тип даних програмістом або користувачем під час написання програмного коду будь-якою мовою програмування, механізм відомий як лиття типу . Програміст вручну використовує його для перетворення одного типу даних в інший. Він використовується, якщо ми хочемо змінити цільовий тип даних на інший тип даних. Пам’ятайте, що тип даних призначення має бути меншим за тип даних джерела. Тому це також називається звужувальною конверсією.

Різниця між приведенням типів і перетворенням типів

Синтаксис:

 Destination_datatype = (target_datatype) variable; (data_type) it is known as casting operator 

Target_datatype: Це тип даних, у який ми хочемо перетворити цільовий тип даних. Змінна визначає значення, яке має бути перетворено в тип target_data. Давайте розберемо концепцію приведення типу на прикладі.

Припустимо, ми хочемо перетворити плавати тип даних into внутр тип даних. Тут цільовий тип даних менший за вихідні через розмір внутр становить 2 байти, а розмір плавати тип даних 4 байти. І коли ми змінюємо його, значення змінної float скорочується та перетворюється на цілу змінну. Приведення можна виконувати як із сумісним, так і з несумісним типом даних.

 float b = 3.0; int a = (int) b; // converting a float value into integer 

Давайте розберемося з приведенням типів за допомогою програми на C.

AreaOfRectangle.c

 #include #include void main() { printf('
 Welcome to Javatpoint tutorials '); float x = 3.5, y = 4.5; // the size of float variable is 4 byte. int area; // the size of the int variable is 2 bytes. area = (int) x * y; // after conversion the product converts into integer printf('
 Area of a Rectangle is : %d', area); printf('
 Here, we convert float data type into the Int data type'); getch(); } 

Вихід:

Різниця між приведенням типів і перетворенням типів

Що таке перетворення типів?

Якщо тип даних автоматично перетворюється на інший тип даних під час компіляції, це називається перетворенням типу. Перетворення виконується компілятором, якщо обидва типи даних сумісні один з одним. Пам’ятайте, що тип даних призначення не повинен бути меншим за тип джерела. Він також відомий як розширення перетворення типу даних.

підготуватися до тесту mockito
Різниця між приведенням типів і перетворенням типів

Давайте розберемося з перетворенням типів на прикладі.

Припустимо, у нас є внутр тип даних і хочете перетворити його на a плавати тип даних. Це типи даних, сумісні один з одним, оскільки їхні типи є числовими, а розмір int становить 2 байти, що менше, ніж тип даних float. Таким чином, компілятор автоматично перетворює типи даних без втрати або скорочення значень.

 int a = 20; Float b; b = a; // Now the value of variable b is 20.000 /* It defines the conversion of int data type to float data type without losing the information. */ 

У наведеному вище прикладі тип даних int перетворюється на float, який має більший розмір, ніж int, і, отже, розширює вихідний тип даних.

Давайте розберемося з перетворенням типів за допомогою програми на C.

 #include #include void main() { printf('
 Welcome to Javatpoint tutorials '); int x = 3, y = 4; // the size of int variable is 2 byte. float area; // the size of float variable is 4 bytes. area = x * y; /* It is a type conversion that automatically converted by the compiler at the compile time of a program. */ printf('
 Area of a Rectangle is : %f', area); printf('
 Here, we convert int data type to the float data type'); getch(); } 

Вихід:

Різниця між приведенням типів і перетворенням типів

Різниця між приведенням типів і перетворенням типів

С.Н. Лиття типу Перетворення типів
1 Приведення типу — це механізм, у якому один тип даних перетворюється програмістом на інший тип даних за допомогою оператора приведення (). Перетворення типів дозволяє компілятору перетворювати один тип даних в інший тип даних під час компіляції програми або коду.
2 Він може використовувати як сумісний тип даних, так і несумісний тип даних. Перетворення типів використовується лише з сумісними типами даних і, отже, не потребує жодного оператора приведення.
3 Це вимагає, щоб програміст вручну перетворив одні дані в інший тип. Для перетворення одного типу даних в інший не потрібне втручання програміста, оскільки компілятор автоматично компілює їх під час виконання програми.
4 Використовується під час розробки програми програмістом. Він використовується або має місце під час компіляції програми.
5 Під час переведення одного типу даних в інший тип даних призначення має бути меншим за вихідні дані. Під час перетворення одного типу даних в інший тип призначення має бути більшим за тип вихідних даних.
6 Це також відоме як звужувальне перетворення, оскільки один більший тип даних перетворюється на менший тип даних. Це також відоме як розширене перетворення, оскільки один менший тип даних перетворюється на більший тип даних.
7 Він більш надійний і ефективний. Він менш ефективний і менш надійний.
8 Існує ймовірність втрати даних або інформації під час приведення типу. При перетворенні типу дані навряд чи будуть втрачені під час перетворення з малого типу даних на великий.
8
float b = 3.0; int a = (int) b
int x = 5, y = 2, c; float q = 12.5, p; p = q/x;