اندازهی کاراکتر یک بایت هست اما لیترال کاراکتری به int
تبدیل میشه یا دقیقتر یک ترفیع از char
که همون صحیح یکبایتی هست به int
که صحیح ۲، ۴ یا ۸ بایتی هست انجام میشه. بنابراین sizeof('a')
معادل sizeof(int)
هست.
در صورتی که sizeof(char)
رو بررسی کنین میبینین که مقدار ۱ برمیگردونه
نکته با کامپایلر ویژوال استودیو ۲۰۱۰ برای sizeof('a')
مقدار ۱ برگردونده میشه.
هیچ پژوهش انسانی نمیتواند ادعای علمی بودن داشته باشد، مگر اینکه از برهان ریاضی برخوردار باشد (لئوناردو داوینچی)