تبدیل int به float

تبدیل int به float در زبان C

تبدیل نوع داده‌ها (Type Conversion) یکی از مفاهیم اساسی در برنامه‌نویسی است که به ویژه در زبان C اهمیت زیادی دارد. در این مقاله به بررسی تبدیل اعداد صحیح (int) به اعداد اعشاری (float) می‌پردازیم.

انواع تبدیل نوع در C

در زبان C دو نوع تبدیل نوع وجود دارد:

  1. تبدیل ضمنی (Implicit Conversion): که توسط کامپایلر به صورت خودکار انجام می‌شود
  2. تبدیل صریح (Explicit Conversion): که برنامه‌نویس به صورت دستی آن را مشخص می‌کند

تبدیل int به float به صورت ضمنی

زمانی که یک متغیر int را به یک متغیر float نسبت می‌دهیم، کامپایلر به صورت خودکار این تبدیل را انجام می‌دهد:

مثال کد خروجی
int num = 10;
float f = num;
f = 10.000000

توجه: در تبدیل ضمنی، هیچ داده‌ای از دست نمی‌رود زیرا محدوده float بزرگتر از int است.

تبدیل صریح با استفاده از Casting

گاهی نیاز داریم به صورت صریح نوع داده را تبدیل کنیم. این کار با استفاده از عملگر cast انجام می‌شود:

  • سینتکس: (type) expression
  • مثال: (float) num

مثال عملی:

int a = 5;
int b = 2;
float result = (float)a / b; // نتیجه: 2.5

در این مثال اگر از تبدیل صریح استفاده نمی‌کردیم، نتیجه تقسیم 2 می‌شد (چون هر دو operand از نوع int هستند).

نکات مهم در تبدیل int به float

نکته توضیح
دقت float فقط 6-7 رقم اعشار را دقیق ذخیره می‌کند
محدوده اعداد محدوده float بسیار بزرگتر از int است
عملگرها در عملیات مختلط، int به float تبدیل می‌شود

برای اطلاعات بیشتر درباره تبدیل نوع در زبان C می‌توانید به مقاله ادامه مطلب مراجعه کنید.

در نهایت، تبدیل int به float یکی از پرکاربردترین تبدیل‌ها در برنامه‌نویسی C است که با درک صحیح از آن می‌توان از بسیاری از خطاهای محاسباتی جلوگیری کرد.