我想在scanf()函数中使用无限类型说明符(%c)。
例如 -
printf("Enter characters: \t");
scanf("--SPECIFIERS--");
因此不确定用户将输入多少字符。我不希望我的程序向用户询问'字符数'..但我想允许任何字符数。但它不可能在scanf()中输入无限%c。谁能告诉我如何用C做到这一点?
答案 0 :(得分:2)
我想在scanf()函数中使用无限类型说明符(%c)。
您想要读取未指定数量的数据。您可以尝试一些方法:
getline(3)
功能在scanf()
系列函数中使用POSIX标准m
作业分配
char *str;
scanf("%m[^\n]", &str);
一次读取一个字符串输入并随时生成缓冲区。在stackoverflow上有一些函数浮动,只做这个
前两个也分配你应该free(3)
的内存。
答案 1 :(得分:0)
使用%s
作为scanf
的限定符。提到的一个如下:
scanf("%s",buf);
其中buf的类型为:
char buf[100];