เราทราบดีว่าsizeof
เป็นโอเปอเรเตอร์ที่ใช้สำหรับคำนวณขนาดของประเภทข้อมูลและนิพจน์ใด ๆ และเมื่อตัวถูกดำเนินการเป็นนิพจน์คุณสามารถละวงเล็บได้
int main()
{
int a;
sizeof int;
sizeof( int );
sizeof a;
sizeof( a );
return 0;
}
การใช้ครั้งแรกsizeof
ผิดในขณะที่คนอื่นถูก
เมื่อคอมไพล์โดยใช้ gcc ข้อความแสดงข้อผิดพลาดต่อไปนี้จะได้รับ:
main.c:5:9: error: expected expression before ‘int’
คำถามของฉันคือเหตุใดมาตรฐาน C จึงไม่อนุญาตให้มีการทำงานแบบนี้ จะsizeof int
ทำให้เกิดความคลุมเครือหรือไม่
sizeof (int)a
ลอง