先说你截图部分的错误,错误有二:1 你没太理解指针的意义,在令ch=tmp后,实际是指针ch指向了temp(即字符串的首地址),之后想往后移,是ch++,而不是*ch++;2 同一个循环中,你做了两个相关变量的增减操作,即在i++同时将len也在不停减少,待i到达len的时候,其实字符串根本没有读完,自然结果是不对的你的自己试过的同样是第二个错误,不过好的是这样做其实比截图的那样要好一些,可以不用指针的尽量避免,需要的话,把你的错误给你改过来贴这,你自己先根据我说的试一下