anj*_*ruu 4 c struct casting
这在C中合法吗?
struct Doubles { double a,b,c; }; void foo(struct Doubles* bar) { double* baz = (double*)bar; baz[0]++; baz[1]++; baz[2]++; }
我知道它在MSVC 2010上"有效",但我不知道它是否合法,或者不同的布局是否会导致UB.
Dav*_*nan 5
这导致未定义的行为.结构的布局并非完全由标准规定.例如,可能存在填充.
归档时间:
12 年,1 月 前
查看次数:
79 次
最近记录: