zoukankan      html  css  js  c++  java
  • intptr_t 指针

    对于64为系统:

    typedef  signed char  int8_t;

    typedef short int int16_t;

    typedef int int32_t;

    # if __WORDSIZE==64

    typedef long int int64_t;

    #else 

    typedef long long int  int64_t;

    intptr_t 的定义:

    /* Types for `void *' pointers. */
    #if __WORDSIZE == 64
    # ifndef __intptr_t_defined
    typedef long int intptr_t;
    # define __intptr_t_defined
    # endif
    typedef unsigned long int uintptr_t;
    #else
    # ifndef __intptr_t_defined
    typedef int intptr_t;
    # define __intptr_t_defined
    # endif
    typedef unsigned int uintptr_t;
    #endif

     

    可以看出指针用来保存变量或常量的地址,地址由处理器的位数决定。Windows 程序中的句柄就是一个地址。intptr_t 在不同平台上不一样,始终与地址位数相同,用来存放地址。。

    使用intptr_t 来保证平台的通用性,在不同平台上编译的长度不同。

  • 相关阅读:
    DDL讲解
    hadoop-04
    hadoop03
    记录一次hadoop自己 埋的坑
    flask_apscheduler一款定时任务器
    flask通过内存导出excel
    Matplotlib不能显示中文问题
    hadoop02
    hadoop常见shell命令
    hadoop1
  • 原文地址:https://www.cnblogs.com/fanhaha/p/7622487.html
Copyright © 2011-2022 走看看