用指针作参数返回值,我理解是希望指针指向的地址内的值在被调函数中改变,而在主调中指针指向的地址不变,从而实现改变值的目的。在这里你实际是传了一个地址过去,然后在被调函数中将一个地址赋给指针。但函数结束时,被分配的内存空间被系统释放了,所以你所希望的指针地址的转换也没发生。指针指向的地址内的值仍然没变。所以值没变。 你改成*a = c应该就行了。另外, main前少了类型标识符。