为了抑制换行,我们使用 %[^\n]。您能否建议在输入中跳过空白的格式应该是什么,即如果我们必须输入“hallo stackflow”。我知道 fgets 和 gets 但我不想使用它们,它们正在制造问题。
问问题
353 次
2 回答
1
我认为您的意思是“包括空格”。采用:
#define str(x) #x
#define xstr(x) str(x)
/* ... */
char buf[ SIZE + 1 ] = "";
int rc = scanf("%" xstr(SIZE) "[^\n]%*[^\n]", buf);
/*you may need the return value later on, if reading
in multiple strings with whitespaces in a loop */
if (!feof(stdin))
getchar(); /* consume newline */
于 2009-04-23T15:36:29.697 回答
0
在scanf格式中放一个空格;抑制空格。
于 2009-04-23T15:28:48.217 回答