返回信息流RT
sizeof(buffer)是多少?
这是一条镜像帖。来源:北邮人论坛 / cpp / #17663同步于 2008/12/17
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
请问:char buffer[]="abc"; 这样会在末尾添加结束符\0吗,3Q
LoveSHE
2008/12/17镜像同步7 回复
订阅后,新回复会通过你的通知中心匿名送达。
7 条回复
【 在 ericyosho 的大作中提到: 】
: 不明白你啥意思,这个和前面的那个变量没关系。
: 关键是后面的"123"或者"abc",只要是""的,就会自动加\0。
噢 谢谢
我的意思:2者都是会自动补\0啊,只要是双引号那种初始化的,不管是字符指针还是字符数组
"abc"是string literal,都一样
【 在 LoveSHE (想要糖吃的小男孩&^&) 的大作中提到: 】
: 噢 谢谢
: 我的意思:2者都是会自动补\0啊,只要是双引号那种初始化的,不管是字符指针还是字符数组
这个问题激起我多少年没看反汇编的兴趣。
用gcc -S编译,发现"abc"是一个symbol,在char buffer[]="abc"的时候会走一个copy的过程。终于清楚原理了。