西西河

主题:【求助】向各位高手请教一个c语言中数组与指针的问题 -- 数值分析

共:💬84 🌺26 新:
全看分页树展 · 主题
家园 【求助】向各位高手请教一个c语言中数组与指针的问题

最近遇到一个c语言中数组与指针的问题,看到版中高手云集,望各位能不吝指教一二。

是这样的,以前学过c语言,好久不用了,最近作一个小程序。我一直认为二维数组和二阶指针是一回事儿(看来是基础没打牢啊,惭愧,惭愧。)但最近才发现问题。

举个例子来说吧,假如我定义一个函数f1

void f1(int **x)

{

......

}

再在main函数中定义一个int型二维数组

int a[5][5];

然后用循环对a赋初值

然后把它传到函数f1中,

f1((int **)a);

问题来了,在f1中无法正确访问数组。

可是我把地址值打印出来,main函数中a的值与f1中x的值是一样的,(比如都是0x12345678) 但f1中x[0][0]与main中a[0][0]却不一样。

为什么对同一个地址解引用,结果会不同呢?

求教诸位,

先行谢过。

全看分页树展 · 主题


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河