sizeof Operator
sizeof expression
The sizeof keyword gives the amount of storage, in bytes, associated with a variable or a type (including aggregate types). This keyword returns a value of type size_t.
The expression is either an identifier or a type-cast expression (a type specifier enclosed in parentheses).
When applied to a structure type or variable, sizeof returns the actual size, which may include padding bytes inserted for alignment. When applied to a statically dimensioned array, sizeof returns the size of the entire array. The sizeof operator cannot return the size of dynamically allocated arrays or external arrays.
记号部分翻译:
当应用于静态数组时,sizeof 返回整个数组的大小。sizeof操作符不能返回动态分配的数组或外部阵列的大小。
When the sizeof operator is applied to an object of type char, it yields 1. When the sizeof operator is applied to an array, it yields the total number of bytes in that array. For example:
#include <iostream.h>
void main()
{
char szHello[] = "Hello, world!";
cout << "The size of the type of " << szHello << " is: "
<< sizeof( char ) << "\n";
cout << "The length of " << szHello << " is: "
<< sizeof szHello << "\n";
}
The program output is:
The size of the type of Hello, world! is: 1
The length of Hello, world! is: 14