这个问题疑惑了我很久,网上查了好些文章,觉得这个不错:
https://www.cnblogs.com/applebunny/archive/2012/09/09/2677307.html
在此基础上,更改示例程序,认为还不错,放在此处,供大家参考,自己记忆。
程序在vc2010 下编译运行:
// func2array.cpp : Defines the entry point for the console application.
//
#include <stdio.h>
/*********************************
* 方法1: 第一维的长度可以不指定 *
* 但必须指定第二维的长度 *
*********************************/
void print_a(double a[][5], int n, int m)
{
int i, j;
for(i = 0; i < n; i++)
{
for(j = 0; j < m; j++)
printf("%.1f ", a[i][j]);
printf("\n");
}
}
/*****************************************
*方法2: 指向一个有5个元素一维数组的指针 *
*****************************************/
void print_b(double (*a)[5], int n, int m)
{
int i, j;
for(i = 0; i < n; i++)
{
for(j = 0; j < m; j++)
printf("%.1f ", a[i][j]);
printf("\n");
}
}
/***********************************
*方法3