美文网首页程序员
C指针(2):指针的长度和类型

C指针(2):指针的长度和类型

作者: miamendax | 来源:发表于2020-05-26 18:42 被阅读0次

指针的长度和类型

1.内存模型

不同的机器和编译器在给C的基本数据类型分配空间上有不同的做法. 模型取决于操作系统和编译器,一种操作系统可能支持多种模型,这通常是用编译器选项来控制的

2.size_t

size_t类型表示C中任何对象所能达到的最大长度, 无符号整数, 可用于sizeof操作符的返回值类型

//size_t的声明,出现在头文件中
#ifndef __SIZE_T
#define __SIZE_T
typedef unsigned int size_t;
#endif

3.intptr_t和uintptr_t

intptr_t和uintptr_t类型用来存放指针地址。它们提供了一种可移植且安全的方法声明指针,而且和系统中使用的指针长度相同,对于把指针转化成整数形式来说很有用

uintptr_t是intptr_t的无符号版本

4.ptrdiff_t

ptrdiff_t类型表示两个指针差值的可移植方式. 指针相减的结果以ptrdiff_t类型返回。因为指针长度可能不同,这个类型简化了处理差值的任务

常量指针

//指向常量的指针
const int *pci;
int const *pci;//两个语句相同

//指向非常量的常量指针
int num;
int *const cpi = #

//指向常量的常量指针
const int * const cpci = &limit;

//指向"指向常量的常量指针"的指针
const int * const * pcpci;

相关文章

  • C指针(2):指针的长度和类型

    指针的长度和类型 1.内存模型 不同的机器和编译器在给C的基本数据类型分配空间上有不同的做法. 模型取决于操作系统...

  • C 语言指针

    指针类型:指针的读取长度,指针的读取方向(大小端) 空指针,无类型指针,野指针 常量指针,指向常量的指针 http...

  • 与指针相关的四种预定义类型

    这篇文章主要介绍了C语言指针的长度和类型,针对常见的各个类型进行了相对详细的分析,需要的朋友可以参考下 指针是C语...

  • C语言:指针的长度和类型

    如果考虑应用程序的兼容性和可移植性,指针的长度就是一个问题,在大部分现代平台上,数据指针的长度通常是一样的,与指针...

  • Ios面试复习-- 指针

    1.指针的长度 和 类型 二维数组的指针强转

  • C语言指针

    void* 指针 指针有两个属性:指向变量/对象的地址和长度但是指针只存储地址,长度则取决于指针的类型编译器根据指...

  • python与c

    1、ctypes 变量类型 2、定义一个可变字符串变量,长度为 10 3、C 语言指针 4、使用 C 语言数组和结...

  • 带小白学C语言指针

    C语言里指针才是C语言的开始和指针;C语言里基本所有东西都是由指针演变而成; 指针是指向地址的变量,类型就是指针...

  • c++指针和引用的详细介绍(指针常量、常量指针)

    c++指针和引用的详细介绍 1、指针和引用的区别 指针-对于一个类型T,T就是指向T的指针类型,也即一个T类型的变...

  • Go语言指针

    只讲述和C语言地址的不同 格式:var 指针名称 *数据类型var 指针名称 *数据类型 = 地址 指向数组的指针...

网友评论

    本文标题:C指针(2):指针的长度和类型

    本文链接:https://www.haomeiwen.com/subject/xgwvahtx.html