Что я сделал не так, чтобы найти узел с теми же строковыми данными, что и данный? - PullRequest
0 голосов
/ 21 мая 2019

Я программирую игру Тетрис, и как ее часть, я создал систему ранжирования. Рейтинг сохраняется в текстовом файле, а также читается и сохраняется в связанном списке в начале программы. У каждого узла есть имя (строка), оценка (целое число), линке для следующего узла (указатель узла). Функция, которую я пытаюсь добавить, - это найти звание определенного игрока, когда ему дается имя. Но когда я попытался с моим кодом, он не смог найти плеер.

Я пытался использовать приведенный ниже код, но он не работал.

            printw("Input the name: ");
            echo();
            getstr(name);
            noecho();
            printw("      name      |   score   \n");
            printw("----------------------------\n");

            for(int i=0;i<rlen;i++){
                if(cur->name==name){
                    flag=1;
                    printw("%-16s| %d\n", cur->name, cur->score);
                }
                cur=cur->next;
            }
            if(flag==0) printw("\nsearch failure: no name in the list\n");
            break;

Например, если был игрок с именем aaaa и он набрал 1000, если я введу aaaa, он должен напечатать аааа | 1000 Но вместо этого он печатает сообщение об ошибке поиска.

...