size_t

size_t is a defined type (through typedef) which is basically an unsigned long int. 

Since the idea of a negative value for a size isn't practical sometimes,

it is a type that is used to help find degenerate values during debugging.

Example:

size_t X = 100;

printf("X = %u\n", (unsigned long) X);

size_t is defined in various header files such as:

<stddef.h>, <stdio.h>, <stdlib.h>, <string.h>, <time.h>, <wchar.h> 
原文地址:https://www.cnblogs.com/JasperZhao/p/12806647.html