我对C中的size_t感到困惑.我知道它是由sizeof操作员返回的.但到底是什么呢?它是数据类型吗?

假设我有一个for循环:

for(i = 0; i < some_size; i++)

我应该用int i;还是size_t i;

推荐答案

From Wikipedia:

根据1999年ISO C标准

是一种无符号数据类型

此类型用于表示

顾名思义,size_t是一种保证保存任何数组索引的类型.

C++相关问答推荐

为什么在传输 Big Data 时共享内存段的运行时间比管道更长?

C/C++中的状态库

以c格式打印时间戳

为什么下面的递归基本情况在C中不起作用?

C/SDL程序,渲染不使用我的渲染器

两个连续的语句是否按顺序排列?

我可以在C中声明不同长度数组的数组而不带变量名吗?

使用AVX2的英特尔2022编译器的NaN问题&;/fp:FAST

Linux不想运行编译后的文件

判断X宏的空性

一旦运行长度超过2,编译器是否会优化";strnlen(mystring,32)>;2";以停止循环?

Wcstok导致分段故障

如何对现有的双向循环链表进行排序?

哪个首选包含第三个库S头文件?#INCLUDE;文件名或#INCLUDE<;文件名&>?

在文件描述符上设置FD_CLOEXEC与将其传递给POSIX_SPOWN_FILE_ACTIONS_ADCLOSE有区别吗?

使用mmap为N整数分配内存

STM32:代码的执行似乎取决于它在闪存中的位置

C 错误:对 int 数组使用 typedef 时出现不兼容的指针类型问题

添加/删除链表中的第一个元素

如何在 C 中的 Postgres 函数的表中 for 循环