【发布时间】:2012-03-29 17:31:01
【问题描述】:
我最近在我的项目中发现代码调用memcpy,地址为数组名
int a[10];
memcpy(&a, &b ,sizeof(a));
令人惊讶的是(对我来说)它似乎有效。
我应该把它改成memcpy(a,b,sizeof(a)); 吗?
C++ 规范允许吗? 谁能指出我有关这种行为的资源?有什么陷阱吗?
我也查了
assert((void*)&a == (void*)a);
而&a 确实与a 相同(除了它的类型)。
我在 VS2005、VS2008 和 VS2010 中验证了这种行为。
【问题讨论】:
标签: c++