传递串给printf工作不正常 代码:传递字符串给printf,在C
char p[50];
scanf("%s", p);
printf(p, 10);
输入:value:%d\n
预期输出:value:10
输出:value:10\n
也,我在不同的时间得到不同的输出。相同的a.out的输出在3个连续执行:
$/a.out的
value: %d\n
value:
$/a.out的
value:%d\n\n
value:10\n\n
$/a.out的
。value:%d\n
value:10\n
在上面,value: %d\n
是由于scanf,而下一行由printf
我不相信你的代码和例子的输出。文本“值”出现在输出中,但不在代码中。你*键入*'价值'? – unwind 2013-02-27 07:34:22
@unwind它出现在输入中。他将输入作为第一个参数传递给'printf' – 2013-02-27 07:36:13
它是否像将用户输入字符串直接传递给'printf'一样糟糕? – 2013-02-27 07:37:36