• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

刀割问个关于sizeof的一些题目

边城 2014-04-08 浏览量:2187

int *P=NULL;

sizeof(p)的值是多少了

sizeof(*p)又是多少;;



int a[100];

sizeof(a)的值是多少了

sizeof(a[100])的值是多少了

sizeof(&a)的值是多少了

sizeof(&a[0])的值是多少了


最近刀割一直想把这个sizeof彻底搞懂

0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 这些是跟系统及编译器有关的量。例如sizeof(int) 在DOS下用TC2.0编译就是2,在32位XP下用VC6或VC2003编译就是4;   
    在32位机下,sizeof(int)*p是 4乘以p     
                         sizeof(p) = sizeof(int*) = 4,是说指针占用几个字节
                sizeof(*p) = sizeof(int) = 4,是说整型数占用几个字节
    • 发布于 2014-04-08
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:32
  • 帮刀割看看  本人有奖
    • 发布于2014-04-08
    • 举报
    • 评论 0
    • 0
    • 0

  • sizeof表示的是变量占用字的节数。
    a本身是个地址,用int存放,占用4个字节。
    int就是4,a[100]一共是100个int变量,就是400.
    &a也是个地址值(存放a的地址的空间内存的地址),一个地址用int存放也是4
    &a[0]也是个地址,占用4
    • 发布于2014-04-08
    • 举报
    • 评论 0
    • 0
    • 0

  • 楼上讲的很不错啊,厉害厉害

    • 发布于2014-04-08
    • 举报
    • 评论 0
    • 0
    • 0

  • 上面的4你的意思是说 在32 下 NULL占用的字节是4个字节
    • 发布于2014-04-08
    • 举报
    • 评论 0
    • 0
    • 0

  • 以身相许  求解释啊  看看啊 冰哥
    • 发布于2014-04-08
    • 举报
    • 评论 0
    • 0
    • 0

  • NULL表示的只是这个地址为空而已,这个指针变量本身还是要占内存的,32位环境下,指针所占的内存都是4个字节
    • 发布于2014-04-08
    • 举报
    • 评论 0
    • 0
    • 0

  • 谢谢啊   顶起啊   我决定以后就是你的 啊 
    • 发布于2014-04-08
    • 举报
    • 评论 0
    • 0
    • 0

  • 刀哥不要酱紫!!!
    • 发布于2014-04-08
    • 举报
    • 评论 0
    • 0
    • 0

  • 是很难啊  现在我又回头看看指针啊
    • 发布于2014-04-08
    • 举报
    • 评论 0
    • 0
    • 0

  • 哈哈就是int内存大小是4个byte
    • 发布于2014-04-08
    • 举报
    • 评论 0
    • 0
    • 0

  • 我决定以后把名字改为心如刀割的     刀割好了    问下  酱紫是什么意识啊
    • 发布于2014-04-08
    • 举报
    • 评论 0
    • 0
    • 0

  • sizeof只是用来取得括号内量占用的空间的,你不了解的是括号内东西代表什么而已

    int *P=NULL;                                       这是在定义一个空指针,可以理解为(int *)类型的一个变量,这个变量里存的是一个地址,指向另一个地方

    sizeof(p)的值是多少了                     上一行说了,里面存的是一个地址,32位机一个地址大小事4

    sizeof(*p)又是多少;;                   *p意思指这个变量里存的地址指向的那个对应内存空间,这个时候这个指针指向的内容是int类型的,座椅sizeof大小事int大小

    • 发布于2014-04-08
    • 举报
    • 评论 0
    • 0
    • 0

  • 酱紫是什么意思  给我讲讲
    • 发布于2014-04-08
    • 举报
    • 评论 0
    • 0
    • 0

  • 要是

    int b【100】

    void fun (int b【100】)

    {

    sizeof(b);

    }

    是不是也是400啊

    • 发布于2014-04-08
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

刀割问个关于sizeof的一些题目