gpt4 book ai didi

c - 从c中的stdin读取字符串

转载 作者:行者123 更新时间:2023-11-30 16:49:07 24 4
gpt4 key购买 nike

我编写了一个简单的程序来读取字符串。

void main()
{
char *str; /*didn't allocate memory*/
scanf(" %s",str);
printf("%s",str);
}

但它导致了段错误。而下一个则不是。

void main()
{
char *str;
scanf(" %c",str);
printf("%c\n",str);
}

有人介意澄清一下它实际上是如何工作的吗?

最佳答案

您的字符串未分配。这意味着您正在写一些您没有要求的地方。

但是你可以做的是:

#include <stdio.h>    
#include <stdlib.h>

int main(int argc, char *argv[])

{
char c;
while (scanf("%c",&c) && c != '\n')
printf("%c",c);
printf("\n");

return 0;
}

它将读取您在输入中发送的每个字符,直到您按回车键。

关于c - 从c中的stdin读取字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42722707/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com