Я пытаюсь выполнить этот блок кода.
#include <stdio.h>
int main(void)
{
printf("Start from here\n");
int e, f, g, h;
scanf("%d,%d", &e, &f);
scanf("%d, %d", &g, &h);
printf("%d %d %d %d", e, f, g, h);
}
Когда я ввожу 2,0 или что-то, что соответствует строке формата в первом scanf(), также выполняется вторая scanf().
Однако, если я ввожу что-то вроде 2-0 в первый scanf(), программа пропускает второй scanf() и переходит прямо к printf()
Например, здесь ввод и вывод пробного запуска программы. Вторая строка - это вход.
Start from here
1-2
1 0 -2 -856016624u
Обратите внимание, как программа полностью пропустила второй scanf() и сразу же перешла к printf(). Почему здесь пропущен второй scanf()?