當前位置:編程學習大全網 - 網站源碼 - C語言調試程序

C語言調試程序

#define NUM_1 3

#define NUM_2 3

main()

{

void change(int a[NUM_1][NUM_2],int b[NUM_1][NUM_2]);

int arrow1[NUM_1][NUM_2]={1,2,3,4,5,6,7,8,9},arrow2[NUM_1][NUM_2];

change(arrow1,arrow2); /*此處實參應是二維數組的地址*/

}

void change(int a[NUM_1][NUM_2],int b[NUM_1][NUM_2])

{

int i,j;

int (*p)[3],(*q)[3],*p1,*q1;

p=a;q=b;

for(i=0;p<a+3;p++,i++)

for(p1=*p,j=0;p1<*p+3;p1++,j++)

{q1=*(q+j);

*(q1+i)=*p1;

}

for(q=b;q<b+3;q++)

{for(q1=*q;q1<*q+3;q1++)

printf("%d ",*q1);

printf("\n");

}

}樓主有幾處明顯錯誤 :首先要使調用函數改變主函數的值應該使用引用傳遞而不是值傳遞 ;在調用函數的時候 實參應該是二維數組的地址。

  • 上一篇:負數-2.5的浮點數表示的形式是什麽?
  • 下一篇:簡茸為什麽染藍發
  • copyright 2024編程學習大全網