谁能解释一下这些代码行之间有什么区别
char *p = "String";
char p2[] = "String";
char p3[7] = "String";
在什么情况下我应该使用上面的每一个?
这个链接应该可以满足你的好奇心。
基本上(忘记你的第三个例子是不好的),1 和 2 之间的区别是 1 为指向数组的指针分配空间。
但在代码中,您仍然可以将它们作为指针进行操作——唯一的一点是,您无法重新分配第二个。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)