zoukankan      html  css  js  c++  java
  • 二维数组的函数参数传递

    两种方式:

    1. 静态二维数组,如int a[10][20];

    2. 二维指针创建的动态数组,如int** p.

    第一种:

     1 int GetMaxElem(int (*ppArray)[20], int nRow, int nColumn)
     2 {
     3     ASSERT(ppArray != NULL);
     4     ASSERT(nRow > 0 && nColumn > 0);
     5 
     6     int nMax = ppArray[0][0];
     7 
     8     for (int i=0; i<nRow; i++)
     9     {
    10         for (int j=0; j<nColumn; j++)
    11         {
    12             if (ppArray[i][j] > nMax)
    13             {
    14                 nMax = ppArray[i][j];
    15             }
    16         }
    17     }
    18 
    19     return nMax;
    20 }

     调用时如下:

    1 int  (*p)[20= a;
    2 int nMax = GetMaxElem(p, 1020);

     另外,还可以使用以下方式:

    1 typedef int MATRIX[10][20];
    2 int GetMaxElem(MATRIX ppArray, int nRow, int nColumn)

    调用时使用:

    1 int nMax = GetMaxElem(p, 1020);
    2 int nMax = GetMaxElem(a, 1020);

    第二种:

     1 int GetMaxElem(int** ppArray, int nRow, int nColumn)
     2 {
     3     ASSERT(ppArray != NULL);
     4     ASSERT(nRow > 0 && nColumn > 0);
     5 
     6     int nMax = ppArray[0][0];
     7 
     8     for (int i=0; i<nRow; i++)
     9     {
    10         for (int j=0; j<nColumn; j++)
    11         {
    12             if (ppArray[i][j] > nMax)
    13             {
    14                 nMax = ppArray[i][j];
    15             }
    16         }
    17     }
    18 
    19     return nMax;
    20 }
    不过调用的时候就和第一种不同了。需要先将a的内容拷贝到一个动态数组中。
  • 相关阅读:
    PythonStudy——数据类型总结 Data type summary
    PythonStudy——可变与不可变 Variable and immutable
    PythonStudy——列表操作 List operatio
    PythonStudy——列表的常用操作 List of common operations
    PythonStudy——列表类型 List type
    PythonStudy——字符串扩展方法 String extension method
    PythonStudy——字符串重要方法 String important method
    AWT,Swing,RCP 开发
    JQuery插件机制
    最新知识网站
  • 原文地址:https://www.cnblogs.com/burellow/p/2043525.html
Copyright © 2011-2022 走看看