あー。構造体のメンバとしてはint *aだから*aがコピーされるだけ。
aを配列として扱ってるのはおまえの勝手だろ ってことですか。

では関数の引数に可変長の配列をコピーで渡したい場合はどうしたらいいのでしょうか?