c-代码在windows XP上的malloc()崩溃



我的简化代码如下所示:

 char decrypted[64] = "P@ssw0rd                ";
 int realsize = 8;
  realloc(decrypted, realsize);
  char *dec2 = (char *) malloc(realsize+1); // Exe crashes at this point

我猜这与char*dec2有关,但这只是由于某种原因导致Win XP崩溃。

您不能用malloc()calloc()realloc()分配尚未分配的realloc()

decrypted是在堆栈上分配的数组。realloc只能用malloccalloc重新分配堆上分配的内存。

相关内容

  • 没有找到相关文章

最新更新