求高手帮助,简直活见鬼。
c语言吧
全部回复
仅看楼主
level 3
頓舍
楼主
要求是用函数接收一个字符串,返回反序字符串。如图,这个反序字符串明明在子函数里打印是正常的,一传送回主函数打印就会变成乱码。我试着把数组都写成指针形式,也是没用。实不知问题所出,求高手指点。
2020年12月04日 17点12分
1
level 3
頓舍
楼主
我好像懂了,因为re[ ]是局部变量,退出子函数就没了,加上static就行了。
2020年12月04日 17点12分
2
level 10
缺心眼的花
加群大佬免费指导解答
2020年12月05日 05点12分
3
level 1
拔网线还是输😜
不用static,你直接多传个指针指向反序字符数组不就行了吗?
2020年12月05日 06点12分
4
頓舍
没有用的,在函数里声明的变量都是自动存储,一旦离开这个函数内存就被释放了,指针指向的这个地址里面已经没有存着的字符了,所以必须加上 static 变成静态存储。
2020年12月05日 15点12分
頓舍
字符串数组名本身就是一个指针。
2020年12月05日 15点12分
拔网线还是输😜
@頓舍
我的意思是,你在主函数里直接定义一个指针,然后在子函数里malloc一块数组空间,把首地址返回出去,这样不就没有销毁了吗?
2020年12月05日 15点12分
頓舍
@拔网线还是输😜
哦,也可以。
2020年12月05日 15点12分
1