如果我想实现函数参数传递数组的业务需求,在Java中很容易实现,如下所示。因为Java有.length方法,可以获取数组的长度。

public class Test {
public static void show(int[] a){
for (int i = 0; i < a.length; i++) {
System.out.println(a[i]);
}
}
public static void main(String[] args) {
int[] a = new int[]{1,2,3,4,5,6};
show(a);
}
}

而C++则不然,由于它没有.length方法,它的一般写法如下:

void show(int *a, int length){
for(int i = ; i < length; i++){
cout<<a[i]<<endl;
}
} int main(){
int a[] = {,,,,};
show(a, );
}

如果想传递二维数组的话,C++写法如下:

void show(int **a, int length){
for(int i = ; i < length; i++){
for(int j = ; j < length; j++){
cout<<*((int*)a + length*i + j)<<"\t";
}
cout<<endl;
}
} int main(){
int a[][] = {{,},{,}};
show((int **)a, );
}

参考博客:http://blog.csdn.net/hongjiqin/article/details/5739935

参考博客:http://blog.csdn.net/liyongbao1988/article/details/7463481

最新文章

  1. 【Java EE 学习 22 上】【文件上传】【目录打散】【文件重命名】
  2. 以代码爱好者角度来看AMD与CMD
  3. Hello Mybatis 03 数据关联
  4. 1 mysql的安装
  5. 【Visual Lisp】Visual Lisp属性与方法
  6. 命令行下打WAR包
  7. 键盘控制div移动
  8. 九度OJ1468
  9. [PWA] 3. Devtool
  10. Node.js学习 - Install and Configure
  11. C++ 头文件系列(sstream)
  12. FineUIMvc随笔 - 不能忘却的回发(__doPostBack)
  13. sodu 命令场景分析
  14. linux下线程的两种封装方式
  15. 测试&amp;标准说明文章
  16. Linux-网络综合实验
  17. Identity Server 4 中文文档(v1.0.0)
  18. linux下的QT打包方法
  19. java Boolean和boolean的区别
  20. Lambda表达式中的GroupBy使用的正确姿势

热门文章

  1. FrameWork数据权限浅析4之基于多维度配置表实现行级数据安全
  2. tm标准mvc框架对应robotlegs 的mvc
  3. 转adb Shell root 权限
  4. C#应用视频教程3.2 Halcon软件测试
  5. Patterns-Proxy
  6. 基于canvas的仪表盘效果
  7. 深层神经网络框架的python实现
  8. 通过CSS3,实现元素覆盖效果
  9. java基础学习总结——GUI编程(二) 未学习
  10. Linux-软件包管理-yum在线管理-光盘yum源