Как вводить в scanf_s?

Вот такой вот простой код на C в Visual Studio

#include <locale.h>
#include <stdio.h>

int main()
{
    setlocale(LC_ALL, "Russian");

    printf("Введите данные:\n");
    char name[5];
    char vid;
    int area;
    scanf_s("%s", name, 5);
    scanf_s("%c", &vid, 1);
    scanf_s("%d", &area);

    printf("%s, %c, %d", name, vid, area);

Я не могу нормально ввести значение vid , потому что, когда я ввожу 4 символа name, я ставлю пробел и он считается за символ, если enter, тоже считает как символ переноса. Есть способ как-то адекватно вводить данные, чтобы через пробел или enter, или для это придётся каждый раз прописывать вывод "\n" ? А если сделать ввод одной строчкой вот так scanf_s("%s, %c, %d", name, 5, &vid, 1, &area);, то он вообще нормально не вводит, все данные кроме первой строки name берёт по умолчанию, я не понимаю, как это работает. Подскажите, пожалуйста, как реализовать ввод на C в Visual Studio без #define SRT_SECURE_NO_WARNINGS а именно, используя scanf_s.


Ответы (0 шт):