用scanf("%s",array); 的话遇到空格就停止接收后面的字符了
以下是处理这种情况的一些方法(记录下来以免以后遇到相似的问题):
- 1.使用
"%[^\n]"也是可以接收输入一个带空格的字符串,直到回车结束接收
char buf[10] = {0};
scanf("%[^\n]",buf); //可以读取空格,回车结束输入
注:%[abc]表示字符组合包括a、b和c,如果遇到这三个字符之外的字符,则停止接收。%[^abc]代表字符组合为abc以外的所有字符,至于横杠是否用于指定某个范围的字符%[a-z],则因编译器而异。
- 2.使用
gets(),它可以接收带空格的字符串, 直到回车才结束输入
char buf[80]={0};
gets(buf); //可以读取空格, 回车结束输入










网友评论