Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 你能具体告诉我这个项目在做什么吗?_C_If Statement_Syntax_Realloc - Fatal编程技术网

C 你能具体告诉我这个项目在做什么吗?

C 你能具体告诉我这个项目在做什么吗?,c,if-statement,syntax,realloc,C,If Statement,Syntax,Realloc,你能一步一步地解释一下它是如何工作的吗?首先,这一行 if(!(temp = (double*)realloc(data, capacity*sizeof(double))))" 应该像 if(!(temp = (double*)realloc(data, capacity*sizeof(double)))) 因为 也就是说,为了打破这种说法 首先,计算temp=realloc(数据、容量*sizeof(双精度))。此语句重新分配数据,以便分配的内存大小等于容量*sizeof(doub

你能一步一步地解释一下它是如何工作的吗?

首先,这一行

  if(!(temp = (double*)realloc(data, capacity*sizeof(double))))"
应该像

 if(!(temp = (double*)realloc(data, capacity*sizeof(double))))
因为

也就是说,为了打破这种说法

  • 首先,计算
    temp=realloc(数据、容量*sizeof(双精度))
    。此语句重新分配
    数据
    ,以便分配的内存大小等于
    容量*sizeof(double)
    字节。返回的指针存储到
    temp

  • 然后,基本上整个语句减少为
    if(!(temp))
    。通过检查返回的指针是否为NULL,检查
    realloc()
    调用是否成功

    • 如果
      realloc()
      失败,则返回NULL,并且
      If
      将计算为TRUE,因此程序将执行
      exit(1)然后结束

    • 如果
      realloc()
      成功,
      temp
      将有一个非空指针,因此,
      If
      检查将失败,程序将正常继续


  • scanf(“%lf”,数据+计数+)???这是什么?你会更困惑吗?我投票把这个问题作为离题来结束,因为没有“解释我的代码”网站。你为什么不给你的朋友打电话/发电子邮件问问呢?因为他不知道如何解释。很抱歉给您带来不便,我只是需要一些帮助。这不是我的密码。无论如何,谢谢你。:)非常感谢你。我感谢你的帮助。现在我明白了,不客气。你也可以。
    
     if(!(temp = (double*)realloc(data, capacity*sizeof(double))))
    
     if(!(temp = realloc(data, capacity*sizeof(double))))