edit:由於x64下cdecl會學fastcall把特定型別的args放register去傳
所以這問題應該是無解。
簡單的說,以下方的code為例子,根本不可能拿到正確的&a
編譯器在發現你試圖取址a/b的時候 會把他們從esi/edi(都是x64的register)
拷貝出來以後隨意丟在一個無法預期的位置讓你去取址
以這邊來講,就是丟一個離function frame stack 16byte的位置
所以本題應該是無解,而且當args不是int的時候他傳法不見得會相同
重點asm放在這給大家參考一下
movl $30, %esi
movl $20, %edi
call _Z8testCallii