Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Ошибка времени выполнения при использовании функции scanf_s - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Проверить, подключен ли клиент к серверу http://www.cyberforum.ru/cpp-beginners/thread1644662.html
Извиняюсь за возможно глупый вопрос, но ничего внятного я не нашел. Пишу программу, которая будет собирать данные детализации звонков с АТС по протоколу TCP (CDR или SMDR, если кто в курсе) и...
C++ Найти количество денег, необходимое Пете, чтобы купить 3 целых упаковки конфет В магазине ириски продаются только в упаковке, по 30 штук, и стоят 60 рублей. Пионеру Пете нужно 3 целых упаковки(90 конфет), зачем - никто не знает. Одноклассники подарили/поменялись на ириски, и... http://www.cyberforum.ru/cpp-beginners/thread1644632.html
C++ Подскажите книгу по Visual C++
Занимался раньше Delphi и небольшие учебные задачки делал на С, С++. Есть книга Бобровского по Delphi где вкратце дано описание языка а потом описаны все компоненты и как работать, размещать их в...
C++ Найти причины и способы устранения ошибок в коде
Прошу Вашей помощи. Я только начинаю изучать С++. Пытаюсь создать программу а он выдает ошибки 1>------ Сборка начата: проект: Проект11, Конфигурация: Debug Win32 ------ 1> Исходный код.cpp...
C++ Как реализовать запрос на повторный ввод в цикле while http://www.cyberforum.ru/cpp-beginners/thread1644577.html
Всем Доброго времени суток! Помогите, пожалуйста новичку справиться с задачей. Условие задачи требует вывести на консоль необходимое количество выбранных символов в горизонтальной или вертикальной...
C++ Нарисовать заданное количество точек окружности, равноудалённых друг от друга Ребят, помогите! Делаю исследовательскую работу по математике и встал в ступор при первой же проблеме! Юзаю GLUT. Нужно нарисовать n точек окружности, равноудалённых друг от друга. Думаю использовать... подробнее

Показать сообщение отдельно
IveningInnertia
0 / 0 / 0
Регистрация: 10.11.2015
Сообщений: 12

Ошибка времени выполнения при использовании функции scanf_s - C++

22.01.2016, 08:54. Просмотров 1117. Ответов 4
Метки (Все метки)

Есть код создания библиотеки книг, это его часть. Если потребуется могу скинуть весь код, но он без комментариев

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
void library::print_book(void) {
    printf("=================\n");
    spisok_this = spisok;
    for (int i = 0; i < 500; i++) {
        if (spisok_this == null) break;
        printf("%s %s %d\n", spisok_this->author, spisok_this->name, spisok_this->pages);
        spisok_this = spisok_this->spisok_next;
    }
    printf("=================\n\n");
};
int library::menu(void) {
    while (1 == 1) {
        char *name = new char[100];
        char *author = new char[100];
        int pages;
        printf("if u wanna add book print 1, if u wanna delete book print 2, if u wanna end print 3\n");
        scanf_s("%d", &a);
        if (a == 1) {
            printf("name author pages");
            scanf_s("%s" "%s" "%d", name, author, &pages);
            add_book(name, author, pages);
 
        };
На вот этой строке выходит сообщение об исключении:
C++
1
            scanf_s("%s" "%s" "%d", name, author, &pages);
Вот само исключение: Необработанное исключение по адресу 0x1005F773 (ucrtbased.dll) в ConsoleApplication8.exe: 0xC0000005: нарушение прав доступа при записи по адресу 0x00333000.

Выдается три предупреждения:

Предупреждение C4473 "scanf_s": передано недостаточно аргументов для строки формата ConsoleApplication8 i:\information\consoleapplication8\consoleapplication8\consoleapplication8.cpp строка 136


Предупреждение C4477 'scanf_s' : format string '%s' requires an argument of type 'char *', but variadic argument 3 has type 'int *' ConsoleApplication8 i:\information\consoleapplication8\consoleapplication8\consoleapplication8.cpp строка 136


Предупреждение C4477 'scanf_s' : format string '%s' requires an argument of type 'int', but variadic argument 2 has type 'char *' ConsoleApplication8 i:\information\consoleapplication8\consoleapplication8\consoleapplication8.cpp строка 136

Строка 136 это и есть вот эта строка:
C++
1
            scanf_s("%s" "%s" "%d", name, author, &pages);
Помогите разобраться в чем дело, студия 2015
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru