در مثال اول برای متغیر x که از نوع float اعلان شده است، ۴ بایت حافظه پیشبینی میشود. ولی در نتیجه اجرای دستور printf سطر دوم، به دلیل دستور (int)x مقدار آن به نوع int تبدیل میگردد و نمایش داده میشود. بنابراین، اگر برای مثال محتوای حافظه بهصورت
۰٫۲۶ E+7
باشد، مقدار ۲۶۰۰۰۰۰ نمایش داده خواهد شد.
همینطور در مثال دوم برای متغیر x که از نوع short int اعلان شده است، ۲ بایت حافظه پیشبینی میشود، ولی درنتیجه اجرای دستور printf سطر دوم، به دلیل (char)x مقدار آن به نوع کاراکتر تبدیل میگردد و محتوای دو بایت حافظه مزبور بهصورت یک رشته دوبایتی نمایش داده میشود. به همین دلیل است که در فرمت چاپ مقدار متغیر مزبور، از فرمت “%s” که برای رشته است استفاده شده است. حال اگر برای مثال محتوای حافظه مربوط به متغیر x به صورت ۱ ۲ ۳ ۴ باشد، موقع نوشتن به صورت رشته “۱ ۲ ۳ ۴” چاپ میشود.
در اینجا به اختصار یادآور میشویم که فرمتهای “%s”, “%c”, “%f”, “%d” به ترتیب برای متغیرهای از نوع مقادیر صحیح، اعشار، کاراکتر و رشته به کار میروند.