没有完全看懂你的描述。在main主函数里,char a[20],这个a是数组类型,值是不能改变的,用++必然出错。而函数参数里的char str[20],表面上与主函数里的a没有什么不同,但实际传递到函数中的str是一个指针,所以可以++。你可以跟踪一下代码,看一看和我说的是不是相同的