可以用一维指针进行交换字符串的操作吗?

题目要求交换字符串是要单独写一个函数,而且给好了函数原型是**void swap(char*a,char*b)**,

但是我用char*temp交换两个数组的首地址的值只能在swap函数里实现交换,传回main里还是实现不了,为什么呢?是因为数组的首地址是无法修改的常量吗?那如何通过指针来实现字符串的交换呢?

谢谢!

2个回答

C语言中实参形参变量之间的数据传递是单向的“值传递”,不可能通过执行调用函数来改变实参指针变量的值,但是可以改变实参变量所指变量的值。你可以使用二级指针做参数来交换

qq_43256290
gxpyzg 是不是说如果想改变一个地址,只传一个一个地址肯定是不能改变的,只能传地址的地址来间接的改变这个地址?? 我好想有点明白了……
一年多之前 回复

是不是说如果想改变一个地址,只传一个一个地址肯定是不能改变的,只能传地址的地址来间接的改变这个地址??

我好想有点明白了……

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐