0

我的简化代码如下所示:

 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 崩溃。

4

2 回答 2

7

您不能使用or或realloc()未分配的内容。malloc()calloc()realloc()

于 2013-02-15T13:26:24.703 回答
2

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

于 2013-02-15T13:28:20.793 回答