scanf在switch中不起作用,switch本身在while循环中。 我试图在搜索中找到答案,但我没有。所以,如果你知道需要的主题 - 请写下来。
我正在尝试为书中的任务编写代码,使计算机模拟器“Simpletron”,也许有人知道。
while (memory[instructionCounter] != 4303)
{
//счетчик проходов по циклу
printf ("--> проход %d\n", instructionCounter);
instructionRegister = memory[instructionCounter];
operationCode = instructionRegister / 100;
operand = instructionRegister % 100;
//проверка операнда перед циклом
printf ("--> значение операнда перед циклом: %d\n", operationCode);
switch (operationCode)
{
case 10:
printf ("\n***\t" "Введите значение переменной:\t\t" "***\n");
scanf ("%d", &memory[operand]);
break;
case 20:
printf ("%d", memory[operand]);
break;
case 21:
printf ("***\t" "Симплетрон закончил вычисления.\t\t\t\t" "***\n");
break;
default:
printf ("***\t" "Симплетрон закончил вычисления.\t\t\t\t" "***\n");
break;
}
++instructionCounter;
}