====== عملیّات شوم ====== ‎ برنامه‌ی زیر را در نظر بگیرید. آیا این برنامه به‌درستی کامپایل می‌شود؟ در صورت منفی بودن جواب، خطای کامپایل آن را رفع کنید. #include void show(x) { printf("%d\n", x); } int main() { /* place any of below codes here */ return 0; } برای هر یک از تکّه کدهای زیر، در صورتی که آن را در قسمت مشخص شده در ‎''main''‎ برنامه‌ی بالا قرار دهیم، خروجی یا خطا را بنویسید. **کد الف‎.‎** توجه کنید که اولویت $>>$ و $<<$‎ برابر است. عیناً مانند $+$ و $-$‎. int a = 0x5C; show(a >> 4 << 4); **‎کد ب‎.‎** توجه کنید که اولویت ‎$\sim$‎ بیش‌تر از ‎/‎ است. int b = ~unsigned(0) / 2; show(b); **کد ج‎.** در C‎ چگونه می‌شد باینری نوشت؟‎!‎ int c = 01010 / 10; show(c); **کد د‎.‎** اولویت عملگرهای ‎unary بالاتر از عملگرهای ‎binary است. unsigned char d = !55 ^ ~55; show(d); **کد ه‎‍.‎** خیلی هم پیچیده نیست‎!‎ unsigned char e = 1; for (int i=0; i+1<7; i++) e = (e << 1) + ((e >> i) & 1); show(e); e++; unsigned char f = 2 * e - 2; show(f); * [[سوال ۹|سوال بعد]] * [[سوال ۷|سوال قبل]]