Void swap(int *a,int*b){ int *t; t=a;a=b;b=t}main(){ int x=3,y=5,*p=&x,*q=&y;swap(p,q)printf("%d,%d",*p,*q);}这道题为什么输出的值是3和5?为什么不是5和3?还有就是有void的函数不是五返回值吗,我在这道题里理解为他虽然执行了这个函数但是值不变可以不?到底是为什么?还有其他题虽然也是void但是也变了,这道题却没变,为什么?