关于size_t类型的整理
来源:互联网 发布:js {} 冒号与= 编辑:程序博客网 时间:2024/05/21 03:20
因为用的比较多,所以我决定整理一下size_t的知识点。
其实说白了就是一种数据类型,在标准C库中定义的,应为unsigned int,在64位系统中为 long unsigned int。
size_t为什么麻烦呢,因为它引起了我程序的问题,也是一种玄学的bug:Typename is not allowed.
这个报错经常是与size_t一起出现的,所以当发现这个错误时,就必须弄懂size_t的真正含义。
一个基本的无符号整数的C / C + +类型, 它是sizeof操作符返回的结果类型, 该类型的大小是选择。因此,它可以存储在理论上是可能的任何类型的数组的最大大小。 换句话说,一个指针可以被安全地放进为size_t类型(一个例外是类的函数指针,但是这是一个特殊的情况下)。 size_t类型通常用于循环、数组索引、大小的存储和地址运算。 虽然size_t可以存储一个指针,它的目的是更好地使用另一个unsigned整数类型uintptr_t形式。 在某些情况下,使用size_t类型是更为有效,比习惯性使用无符号类型的程序会更安全。
size_t是在基于无符号整数memsize类型的C / C + +的标准库中定义的。 C语言中,此类型位于头文件stddef.h中,而在C++中,则位于cstddef中。
由于不同的系统中,内存对数的高位存储和低位存储都不一样,所以有必要提供一种好的移植方式,而size_t的特性就特别适合。
因为size_t类型的数据其实是保存了一个整数,所以它也可以做加减乘除,也可以转化为int并赋值给int类型的变量。
类似的还有wchar_t, ptrdiff_t。
wchar_t就是wide char type,“一种用来记录一个宽字符的数据类型”。
ptrdiff_t就是pointer difference type,“一种用来记录两个指针之间的距离的数据类型”。
再由于size_t可安全存放指针,CUDA里Device里都是指针在做基本操作,所以在CUDA里大量使用size_t也很正常啦。
0 0
- 关于size_t类型的整理
- size_t类型的用途
- 关于size_t类型的变量,跨平台格式字符串?
- size_t类型
- size_t类型
- size_t类型
- size_t类型
- size_t 类型
- size_t类型
- size_t类型
- size_t 类型
- size_t 类型
- size_t 类型
- size_t 类型
- size_t类型
- size_t类型
- size_t 类型
- size_t 类型
- 1274面向对象程序设计上机练习十二(运算符重载)
- C++多维数组:存储方式、访问方式和作为函数参数
- jquery图片查看插件,支持旋转、放大、缩小、拖拽、缩略图(仿qq图片查看)
- ArrayList源码阅读
- android studio 常用快捷键(我这小白果断的总结一下,以免丢了)
- 关于size_t类型的整理
- 费森尤斯卡比 注射泵药代模型
- recyclerview基本使用使用
- 用Mathematica做微积分
- tomcat相关问题
- AE连接SDE读取数据
- 从零开始学C++之异常(一):C语言错误处理方法、C++异常处理方法(throw, try, catch)简介
- 富文本编辑器(ckEditor)集成struts2实现文件的上传
- stringstream 的使用注意事项