бесплатные указатели не работают, даже если они выделены - PullRequest
0 голосов
/ 04 ноября 2018

У меня в программе есть два указателя, освобождение которых не работает, я не получаю никакой ошибки, только звук ошибки из Visual Studio .. Программа работает отлично, если я не освобождаю их (но я знаю, что должен это сделать). Это мой код со всем, что использует эти два указателя, надеюсь, вы мне поможете.

void gameProcess(char *word, int len) 
{
    int i, letterExist, life = 7, temp;
    char *pGuess, *bank, c;
    if (!(bank = (char*)malloc(N)))
        printf("Error!! Allocated memory failure!");
    bank[N] = '\0';
    if (!(pGuess = (char*)malloc(len)))
        printf("Error!! Allocated memory failure!");
    pGuess[len] = '\0';
    guessVisual(pGuess);
    while (life > 0 && len > 0)
    {
        letterExist = 0;
        printf("\n\nEnter your guess please:\n");
        c = guessInterface(word, pGuess, bank);
        letterExist = checkIfExist(word, c, len);
        temp = replaceIfExist(word, c, pGuess);
        if (letterExist > 0)
            len = rightGuess(pGuess, len, temp);
        else
            life = wrongGuess(life);
        if (len == 0)
            win();
        if (life == 0)
            lose();
    }
    free(pGuess);//***************
    free(bank);//***************
}

Спасибо! Если потребуется какая-либо другая информация, дайте мне знать.

...