我应该使用 $* 还是 $@?

mun*_*ish 12 shell parameter shell-script quoting

使用哪种$*或哪种$@更好(在数组语法、命令行参数等中)以避免代码中的任何错误/问题?或者它没有任何区别?