如何解决无法使用fgets和scanf函数输入单词
使用malloc函数分配字符串的长度后,我试图将句子存储在我的字符串变量中
这是我的代码:
int main(void)
{
int maxleng;
printf("enter numbers to designate maximum length of the string: ");
scanf("%d",&maxleng);
char * string = (char*)malloc(sizeof(char) * maxleng);
if (string == NULL)
{
puts("fails to allocate memory in string");
}
printf("enter any sentence to store in string \n");
fgets(string,maxleng,stdin);
return 0;
}
但是,问题是运行此代码后,我无法在字符串中存储任何单词。 它只允许我指定最大数量,在fgets函数结束程序之前打印句子。
scanf("%[^\n]s",string);
我尝试使用此代码而不是fgets函数,但是它仍然发生在我身上。 有什么解决办法吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。