标签: c for-loop scanf
我正在尝试读取一个输入整数列表,其中scanf()用空格分隔成一个数组,但每次传递负数时它都会中断。如何让它读取负数呢?
for (int i = 0; scanf("%u", &val)==1; i++)
stdin:
1 2 -4 5
它只会将1和2放入数组,然后停止读取其余的数字(我想是因为' - '?)。我该如何解决这个问题?
答案 0 :(得分:4)
使用%d说明符而不是%u,%u只需要无符号值。
%d
%u