sizeof
操作符判断它的操作数的类型长度,以字节为单位表示。
操作数既可以是个表达式(常常是单个变量),
sizeof x
上面的式子返回变量x所占据的字节数。
也可以是两边加上括号的类型名。
sizeof(int)
上面的式子返回整型变量的字节数,其结果自然取决于所使用的环境。
从定义上说,字符变量的长度为1个字节。当sizeof
的操作数是个数组名时,它返回该数组的长度,同样以字节为单位。
在表达式的操作数两边加上括号也是合法的,如下所示:
sizeof( x )
括号在表达式中总是合法的。判断表达式的长度并不需要对表达式进行求值,所以sizeof( a = b + 1)
并没有向a
赋任何值。
参考
- 《C和指针》