使用scanf()函数接收带空格的字符串

sanf()函数在接收字符串时,遇到空格就会停止接收。可以使用gets()函数代替,但也可以用以下方式解决:
比如:
int main()
{
char a[20];
scanf("%[^\n]",a);
puts(a);
return 0;
}
      这里主要介绍一个参数,%[ ],这个参数的意义是读入一个字符集合。[ ]是个集合的标志,因此%[ ]特指读入此集合所限定的那些字符,比如%[A-Z]是输入大写字母,一旦遇到不在此集合的字符便停止。如果集合的第一个字符是“^”,这说明读取不在“^“后面集合的字符,即遇到”^“后面集合的字符便停止。此时读入的字符串是可以含有空格的。(\n 表示换行符)

posted @ 2017-07-25 16:37  王刚韧(wanghy_iOS)  阅读(3419)  评论(0编辑  收藏  举报