строка scanf_s с пробелами между ними - PullRequest
0 голосов
/ 16 мая 2018
void del() {
int temp = checker;
char search[30];
printf("Please enter the book name to be removed : ");
scanf_s("%[^\n]s", search, 30);
//fgets(search, 30, stdin);
for (int i = 0; i < checker; i++) {
    if (strcmp(search, bookshelf[i].name) == 0) {
        for (int j = i+1; j < checker; j++) {
            strcpy_s(bookshelf[i].name, 31, bookshelf[j].name);
            strcpy_s(bookshelf[i].semi_ISBN, 5, bookshelf[j].semi_ISBN);
            bookshelf[i].page = bookshelf[j].page;
            i++;
        }
        checker--;
        printf("%s is removed from your bookshelf.\n\n", search);
    }
}
if(temp==checker)
    printf("%s is not in your bookshelf.\n\n", search);

}

это мой код, и по какой-то причине, когда я пытаюсь использовать scanf_s или fgets, результат выглядит так: "Пожалуйста, введите название книги, чтобы быть удалены: 儆 儆 儆 儆 儆 儆 儆 儆 儆 儆 儆 儆 儆 儆 儆 儆 儆 儆 儆 儆 не в вашей книжной полке." как только я запустил функцию (ничего не набирал).

Что может быть не так ..?

...