C-将值分配给空指针



嗨,我是C和指针的新手,所以我希望您能原谅我。

我有以下代码:

char *str = NULL;
*str = 'a';
printf("My string is :%sn",str);

它会编译,但我每次都会遇到细分错误。这是什么原因,我该如何更改它,以便可以将" A"分配给我的字符串?

预先感谢!

char *str = NULL;

尚未分配指针str。因此,您无法解雇它。然后,您尝试通过

来尊重
*str = 'a';

将发生分割故障。

如果您想要具有" a"值的str,则可以这样做:

char *str = "a";
printf("My string is :%sn",str);

相关内容

  • 没有找到相关文章

最新更新