假设我有以下代码
union test
{
int salary[10];
short ages[20];
} *ptr;
然后我可以将薪水的第二个元素指向ptr->salary[1]
吗?或者我使用ptr.salary[1]
?
答案 0 :(得分:1)
使用ptr.salary[1]
不正确,因为ptr
仍然是指向它指向的类型的指针。
正确的方法是:
ptr->salary[1]
或
(*ptr).salary[1]
在第二种情况下,请不要忘记()
*
的优先级低于.
。