C 标准库 - <stddef.h>

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。