在 C 语言中,sizeof
运算符用于计算对象的大小(以字节为单位)。对于你给出的数组定义:
char s[][10] = {"origin", "money"};
这里,s
是一个包含两个元素的二维字符数组,每个元素的大小为 10
字节。这个定义可以分解如下:
"origin"
占用 7 个字符(包括结束的空字符\0
),所以在内存中它占据 10 字节。"money"
同样占用 6 个字符(同样包括结束的空字符\0
),也在内存中占据 10 字节。
因此,整个数组 s
的总大小将是:
- 每个字符串都占用 10 字节
- 数组有两个字符串
所以,整体大小为: [ 2 \times 10 = 20 \text{ bytes} ]
因此,如果执行 sizeof(s)
,结果将是 20
。
示例代码:
#include <stdio.h>
int main() {
char s[][10] = {"origin", "money"};
printf("Size of s: %zu\n", sizeof(s)); // 输出将是20
return 0;
}
以上代码会输出 Size of s: 20
。
内容由零声教学AI助手提供,问题来源于学员提问