搜索
首页 电脑/网络 程序设计 C/C++

如何编程将数组进行的传址调用转换成传值调用,内详

函数参数中如果调用数组将会进行传址调用,数组修改后回到主函数中数组也就修改了。例如int change(int a[],int n)//传入数组a[n]谁有办法传入数组而进行的是传值,不是传址,即回到main函数中,数组值还是不变因为我在设计一个算法时遇到了回溯,递归函数中有一个参数是数组,而在回溯时数组元素的值由于传址不能恢复上一个点,哪位高手指点一下如何编写!!

全部回答

2008-02-13

0 0

用数组名做函数参数,显然只能是传址方式。 如果只想传值,可以使用下标访问方式来逐个传值,但代码处理会比较繁琐。 个人认为比较好的一个方法是声明一个相同类型和大小的数组b[n],使用strcpy函数,把b用作数组a的备份数据,a仍然为实参传递,b只是作为算法回溯时使用即可。

类似问题换一批

热度TOP

相关推荐
加载中...

热点搜索 换一换

电脑/网络
C/C++
硬件
电脑装机
程序设计
互联网
操作系统/系统故障
笔记本电脑
反病毒
百度
软件
程序设计
C/C++
VB
数据库
汇编语言
JAVA相关
VC++
C#/.NET
其他编程语言
C/C++
C/C++
举报
举报原因(必选):
取消确定举报