程序要实现功能,将输入的2*2矩阵输出到屏幕,可是调试出错#include"stdio.h"
#include"conio.h"
void Arrayprint(double *array,int m,int n)
{
int i,j;
for (i=0;i<m;i++)
{
for(j=0;j<n;j++)
printf("%10.4f",*(*(array+i)+j));
printf("\n");
}void main()
{
double A[2][2];
int i,j;
for(i=0;i<2;i++)
{
for(j=0;j<2;j++)
{
scanf("%lf",&A[i][j]);
}
}
Arrayprint(&A[0][0],i,j);/屏幕输出/
getch();
}
出错信息如下:
warning C4047: 'function' : 'double ** ' differs in levels of indirection from 'double *'
warning C4024: 'Arrayprint' : different types for formal and actual parameter 1请高手们教教小弟怎么改好它,感激不尽啊,VC++6.0
#include"conio.h"
void Arrayprint(double *array,int m,int n)
{
int i,j;
for (i=0;i<m;i++)
{
for(j=0;j<n;j++)
printf("%10.4f",*(*(array+i)+j));
printf("\n");
}void main()
{
double A[2][2];
int i,j;
for(i=0;i<2;i++)
{
for(j=0;j<2;j++)
{
scanf("%lf",&A[i][j]);
}
}
Arrayprint(&A[0][0],i,j);/屏幕输出/
getch();
}
出错信息如下:
warning C4047: 'function' : 'double ** ' differs in levels of indirection from 'double *'
warning C4024: 'Arrayprint' : different types for formal and actual parameter 1请高手们教教小弟怎么改好它,感激不尽啊,VC++6.0
void Arrayprint(double *array,int m,int n)
{
int i,j;
for (i=0;i <m;i++)
{
for(j=0;j <n;j++)
printf("%lf",*(array+ i*n +j));
printf("\n");
}}int _tmain(int argc, _TCHAR* argv[])
{
double A[2][2];
int i,j;
for(i=0;i <2;i++)
{
for(j=0;j <2;j++)
{
scanf("%lf",&A[i][j]);
}
}
Arrayprint(*A,2,2);//屏幕输出/
scanf("%f",&A[1][1]);
return 0;
}
void Arrayprint(double **array,int m,int n)
提示错误,我觉得 一般 用 “**”定义一个类型应该很少吧,不过,有什么用吗?