Моя программа является приложением Windows Form в C #.
У меня есть IDE интерпретатора / компилятора, который в основном запускает пользовательский язык через настраиваемое окно консоли.
При интерпретации строк вводакак "scanf", как приостановить интерпретацию, пока пользователь не нажимает клавишу ввода?
Пример пользовательского кода для разбора:
1 VAR x AS INT
2 START
3 INPUT: x
4 OUTPUT: x
5 STOP
Например, в тех строках, когда моя программаобрабатывает строку 3, он не обрабатывает другие строки, пока пользователь не введет что-либо и не нажмет enter.
Псевдо-фрагмент для анализа строки за строкой:
foreach (string line in inputCode)
{
LineType lineType = line.getType();
if(lineType.InputStatement)
{
//wait for input here
}
else if(lineType.OutputStatement)
{
//analyze output code here
}
else if(lineType.AssignmentStatement)
{
//do Evaluation here
}
}