查資料的時候看到的,不過資料裡的方式,宣告 0 陣列還是會過,所以我乾脆多減一:

#define TYPE_SIZE ((sizeof(int) == 4) - 1)
char arr[TYPE_SIZE];

完全不確定的話,也可以用 > or < 抓範圍 lol。

Ref:
Compile Time Assertions in C