約束變量的生存期只在一個線程中,線程停止時變量也被銷燬。它提供了一種簡單的方式來保證線程安全,多線程訪問時不需要關注競爭條件。
2 __typeof__操作符:指示表達式的類型,任何可以使用typedef定義名稱的地方都能使用它。
__typeof__(*x) y; // Declares y with the type of what x points to.
__typeof__(*x) y[4]; // Declares y as an array of such values.
__typeof__(__typeof__(char *)[4]) y; // Declares y as an array of pointers to characters
char *y[4];
爲說明__type__of的優點,看下面定義:
#define pointer(T) __typeof__(T *)
#define array(T, N) __typeof__(T [N])
上面最後一個例子可這麼定義:
array (pointer (char), 4) y;
3 逗號表達式:GCC支持簡化形式,如
a = b? : 1;
等價於
a = b? b: 1;