指针带来的问题 void swap(int *a, int *b){ int *t; *t = *a; *a = *b; *b = *t; } int *t之后没有进行初始化,作为变量t,t不初始化会得到一个不确定的值,当t所表示的地址值恰好不被允许写入的时候(比如 t= 0时),*t = *a就会产生错误。