如何将空格扫描成一个字符串?

我试图从用户扫描1-3个单词到一个字符串。 但是,只有第一个单词会扫描。

scanf("%s", &area ) ; 

当遇到空格时, scanf停止从流中读取。 你需要使用getline 。

一种可能性是使用扫描集转换而不是字符串转换:

 char buffer[256]; scanf("%255[^\n]", buffer); 

就像fgets一样,这会读到行的末尾,而不是停留在第一个空格字符处。