C++2.0

关于size_t

2018-11-06  本文已影响13人  芒鞋儿

size_t 概括地说,就是unsigned integer 跨平台的形式。
size_t 常用在内存分配,类型拷贝类的函数。例如:memcpy, strlen, malloc等函数中;

void *malloc(size_t n);
void *memcpy(void *s1, void const *s2, size_t n);
size_t strlen(char const *s);

当表示内存空间大小的时候,普通int不能用,因为int带符号,而unsigned int 在不同平台上定义不同,如果扩展为unsigned long 等类型又会降低程序的执行效率,因而产生了size_t

除此以外, sizeof(para)的返回值也是size_t 类型。

类似的,还有 wchar_t, ptrdiff_t 类型
wchar_t 是宽字符的数据类型
ptrdiff_t 则是记录两个指针之间距离的数据类型

其他:
uint8_t, uint_16_t, uint32_t, uint64_t, 这些则是typedef定义的类型
uint8_t: unsigned char
uint16_t: unsigned short int
uint32_t: unsigned int
uint64_t: unsigned long

参考文章:
https://blog.csdn.net/huilingwu/article/details/51326015
https://blog.csdn.net/bzhxuexi/article/details/19899803

https://blog.csdn.net/yuanfangyuan_block/article/details/80421881

上一篇下一篇

猜你喜欢

热点阅读