首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

关于数组做函数参数的参数的理解,看看小弟我想的对不对

2013-12-10 
关于数组做函数参数的参数的理解,看看我想的对不对?本帖最后由 wolfyc2004 于 2013-12-07 16:18:19 编辑事

关于数组做函数参数的参数的理解,看看我想的对不对?
本帖最后由 wolfyc2004 于 2013-12-07 16:18:19 编辑 事件叙述:我在编程中发现将数组名(假设是数组a[]=“abcdef”,子函数为fun(char s[]))作为参数调用子函数fun(a),子函数将s[]中的元素值进行改变(假设删除"def"),那么在主函数中cout<<a;显示"abc"。
我的理解:
1、在主函数中数组名作为子函数参数时,实际上是将数组的地址传给了子函数。是不是这样?
2、在主函数中定义数组a[],不管是不是static,如果在子函数中直接对形参进行操作(在子函数中不再将形参赋给子函数中的数组变量)就会改变主函数的数组值;如果子函数将形参赋给它里面的数组变量b[],那么对b[]的操作不会影响a[],因为a[]和b[]都有各自的存储空间,互不影响。
刚学,正在数组和指针,请详细,谢谢!
[解决办法]
1 对的!实际是传的地址
2 可以这么理解!但那是在子函数中直接对实参进行操作,
  就会改变主函数的数组值!其他理解都正确~!

热点排行