C 语言类型 size_t 是无符号整数类型,用于表示对象大小和数组长度,是 strlen/sizeof/malloc 等返回或接受的类型。
定义
typedef unsigned long size_t;定义于 <stddef.h>,是无符号整数类型,用于表示对象大小,实际底层类型依平台而定。
用法
#include <stdio.h>
#include <string.h>
#include <stddef.h>
int main() {
size_t len = strlen("Hello");
printf("长度: %zu\n", len);
printf("sizeof(int) = %zu\n", sizeof(int));
return 0;
}输出:
长度: 5
sizeof(int) = 4注意事项
size_t 是无符号的,不要把它和负数比较,否则可能出 bug。打印用 %zu。