c++中的size_t和typedef

1,关于size_t的定义

size_t是一种数据相关的无符号类型,它被设计得足够大以便能够内存中任意对象的大小。

在cstddef头文件中定义了size_t类型,这个文件是C标准库stddef.h头文件的C++版本。

关于百度百科:
size_t概述: size_t 类型定义在cstddef头文件中,该文件是C标准库的头文件stddef.h的C++版。它是一个与机器相关的unsigned整型类型,其大小足以保证存储内存中对象的大小。
size_t由来: 在C++中,设计 size_t 就是为了适应多个平台的 。size_t的引入增强了程序在不同平台上的可移植性。
2, size_t的大小

size_t的大小并非像很多网上描述的那样,其大小是由系统的位数决定的。size_t的大小是由你生成的程序类型决定的,只是生成的程序类型与系统的类型有一定关系。32bits的程序既可以在64bits的系统上运行,也可以在32bits的系统上运行。但是64bits的程序只能在64bits的系统上运行。然而我们编译的程序一般是32bits的,因此size_t的大小也就变成了4个字节。

3,typedef

首先size_t的常见定义如下

#ifndef __SIZE_T

#define __SIZE_T

typedef unsigned int size_t;

#endif

可以看出size_t其实就是unsigned int ,这里再说一下typedef

详细的在这个博客,https://www.cnblogs.com/ktao/p/8578074.html

总之就是一个新的名字。


猜你喜欢

转载自blog.csdn.net/weixin_40332685/article/details/81011751