假设当程序提示我输入要分配给变量的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
之类的库来为您完成大部分工作。