这个size_t是什么呀

int main()
{
int shuzu[3] = { 1,2 };//3*4个字节
//char zimuzu[] = { "c","a","t","\0" };//错误在于里面用单引号 而不是双引号
char zimuzu[] = { 'c','a','t','\0'};
//int shuzichang = strlen(shuzu);//?
//int zimuchang = strlen(zimuzu);
//printf("%d\n", strlen(shuzu));//“printf” : 格式字符串“ % d”需要类型“int”的参数,但可变参数 1 拥有了类型“size_t”
printf("%d\n", sizeof(shuzu));//计算数组总大小,单位是字节
printf("%d\n", sizeof(shuzu[0]));//数组第一个的长度
printf("%d\n", strlen(zimuzu));
return 0;
}

strlen的用法好像也不对
c语言学习第3天

img

img


#c语言

size_t是无符号整型的意思,也就是size_t是无符号整数的意思

多学几天,你就知道了

一般来说是64位无符号整形类型,也叫长整形,是比int更大空间的整形类型,int占4个字节,长整形占8个字节。
至于strlen打印是没错的,strlen函数是取字符串的长度,不包括字符串结束符,也就是'\0',所以这里字符串长度就是3。