[英]C - assigning a value to a null pointer
嗨,大家好,我是C和指針的新手,希望您能原諒我。
我有以下代碼:
char *str = NULL;
*str = 'a';
printf("My string is :%s\n",str);
它可以編譯,但每次都會出現細分錯誤。 這是什么原因造成的,如何更改它以便可以為字符串分配“ a”?
提前致謝!
char *str = NULL;
指針str尚未分配。 因此,您不能取消引用它。 然后,您嘗試遵從
*str = 'a';
分割錯誤將會發生。
如果您希望str帶有“ a”值,則可以執行以下操作:
char *str = "a";
printf("My string is :%s\n",str);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.