پرش به محتوای اصلی
حل شده

تعریفات مخصوص کامپایلر کدویژن

تصویر محمد افتخاریمحمد افتخاریپرسیده شده ۶ سال پیش۵۵ بازدید۲ پاسخ
مهندس اینکه توی برنامه ی ساعتی که نوشتید یه جا از UL استفاده کردید.مثلا userHour *3600UL .این هم نوعی کست کردن هست؟مثلا برای اینکه بگیم لانگ هست میشه نوشت L یا موارد دیگه؟میشه توضیح هم بفرمایید که چرا اگه UL نبود وارنینگ میداد؟

پاسخ منتخب

تصویر مهراد معینمهراد معیناستاد· ۶ سال پیش
پاسخ منتخب
وقتی که شما یک عدد رو در یک متغیر ضرب می کنید، مثل این میمونه که خود کامپایلر براتون اون عدد رو در یک متغیر ذخیره میکنه و بعدا میکرو این دو متغیر رو در هم ضرب میکنه. برای همین شما باید بتونید به کامپایلر بگید که این متغیر رو چطوری ذخیره کن. اون UL به این معنی هست که به صورت unsigned long ذخیرش کن. عدد 3600 اگه به صورت signed ذخیره بشه یک عدد منفی هست.

پاسخ‌ها (۲)

  • تصویر محمد افتخاریمحمد افتخاری· ۶ سال پیش
    لطف کردید

پاسخ شما

برای پاسخ دادن به این سوال وارد شوید.