发布网友 发布时间:2022-04-21 15:43
共3个回答
热心网友 时间:2023-07-14 10:29
void ChangeStrPo(char **p)改为 char** ChangeStrPo(),然后main里,ps=ChangeStrPo();热心网友 时间:2023-07-14 10:30
实参传递后,p=ps,但执行第一个malloc语句后,p值改变,即p!=ps,函数也相当于无参函数;把第一个malloc语句移到主函数中,改为ps=......,再调用函数追问谢谢了,我明白了你的意思。。。你的和我选的那个是一样的,我没打算把malloc给移动到主函数中,它必须是放在子函数内的。当然,还是谢谢了
热心网友 时间:2023-07-14 10:30
指针变量在定义的时候,一定要进行初始化,否则使用起来是很危险的。这是指针使用的基本点。虽然在ChangeStrPo函数中进行了赋值,但是形参接收的却是没有初始化的实参。这在指针使用中是绝对不允许的。追问这给的只是一个测试而已,初始化是一直都有的,你想多了,我一直都没忘处理野指针之类的,这个的危害我懂