int数组入栈有关问题

int数组入栈问题void __fastcall TForm1::btn1Click(TObject *Sender){unsigned int buffer[2]{1769369,1

int数组入栈问题
void __fastcall TForm1::btn1Click(TObject *Sender)
{
  unsigned int buffer[2]={1769369,1769369},result=1769369;
  asm
  {
  //push buffer[0];
  push buffer[1];
  //push result;
  pop result;
  }
  ShowMessage(result);
}
上面的代码,buffer[1]入栈后再出栈值就变了,buffer[0]却不变,为什么?

[解决办法]
因为:
push buffer[1];
在汇编里是指离buffer首地址差1字节的地方,而不是4字节:)