一直有这个疑问,并且经常纠结,今天终于搞明白了。
char *name1;
char name2[20] ; // char *name不能用scanf,没开辟空间指针只能接受地址默认为8个字节
NSLog(@"%lu,%lu",sizeof(name1),sizeof(name2));// 打印结果为8,20,字符数组真正开辟了20个空间,指针只是默认有8个字节来接收地址,scanf只是接受数值而没有空间,所以不能用定义指针接受
分享一下今天的经验有帮助的话可以转载,有问题也可留言或评论,大家一起讨论。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。