ADMICRO
What will be output when you will execute following c code?
#include <stdio.h>
int main()
{
char a = 250;
int expr;
expr= a + !a + ~a + ++a;
printf("%d", expr);
return 0;
}
Chính xác
Xem lời giải
Hãy suy nghĩ và trả lời câu hỏi trước khi xem đáp án
ADSENSE / 1
Lời giải:
Báo saiBiến char a = 250 vượt ra khỏi dải (-128 đến 127). Nên a = 250%256 = -6 (xem thêm: ) Trong các toán tử trong phép toán. Toán tử ! ~ ++ có cùng độ ưu tiên, nhưng trình tự kết hợp từ phải sang trái. Do vậy, ++a = -5 được thực hiện trước. expr = -5 + !(-5) + ~(-5) + (-5) = -5 + 0 + 4 -5 = -6
Câu hỏi này thuộc ngân hàng trắc nghiệm dưới đây, bấm vào Xem chi tiết để làm
toàn bài
ZUNIA12
ZUNIA9
AANETWORK