假设当程序提示我输入要分配给变量的4个整数。当我输入第一个整​​数并按ENTER键时,标记应停留在SAME行上,并跳过空格。第二个将在同一行上输入。每个整数之间将有一个空格

我可以使用什么功能。请提出最简单的方法。 (仍然是初学者)。

int num1, num2, num3, num4;
printf("Give values: ");
scanf("%d%d%d%d", &num1, &num2, &num3, &num4);

最佳答案

用户按下回车键,这将被回显并开始新的一行。

为了避免这种情况,您需要关闭echo(然后读取并回显除换行符以外的各个字符)。这取决于系统,例如,在Linux上,您可以将tty置于raw/uncooked模式。

您可能会找到诸如GNU readline之类的库来为您完成大部分工作。

10-08 02:30