私たちは、それが知っている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
する*&
よりも優れています;-)
+
ます。たとえば、sizeof +(char)a == sizeof(int)
整数の昇格のため、サイズを取得しようとしている式についてまったく心配がない場合は、括弧を入れるだけでエラーが発生しにくくなります。それで、私はそれを「使用」と呼ぶかどうかはわかりませんが、使用したことは認めます...
sizeof (int)a
。