首页 > 试题广场 >

在32位系统上:void *p=malloc( 100 );

[填空题]

在32位系统上:void *p=malloc( 100 );请计算sizeof (p) =1

p是一个指针,32位下为4字节,64位下为8字节
发表于 2018-08-02 16:47:49 回复(2)
你们填空题怎么输入的答案,我怎么输入不了答案
发表于 2018-08-08 19:39:55 回复(5)
100为int类型,32位系统上int类型占4个字节,值得一提的是64位的系统int也是4字节,
其他相关的字节数如下:

32位编译器:

      char :1个字节
      char*(即指针变量): 4个字节(32位的寻址空间是2^32, 即32个bit,也就是4个字节。同理64位编译器)
      short int : 2个字节
      int:  4个字节
      unsigned int : 4个字节
      float:  4个字节
      double:   8个字节
      long:   4个字节
      long long:  8个字节
      unsigned long:  4个字节

  64位编译器:

      char :1个字节
      char*(即指针变量): 8个字节
      short int : 2个字节
      int:  4个字节
      unsigned int : 4个字节
      float:  4个字节
      double:   8个字节
      long:   8个字节
      long long:  8个字节
      
unsigned long:  8个字节


发表于 2018-08-05 12:53:48 回复(0)
sizeof单位是字节
发表于 2019-03-02 22:26:16 回复(0)
p是一个指针,32位下是4个字节,64位下是8个字节,sizeof()单位是字节
编辑于 2019-06-03 21:12:36 回复(0)
mark 。。。
发表于 2018-10-22 15:22:20 回复(0)