主题:【求助】向各位高手请教一个c语言中数组与指针的问题 -- 数值分析
共:💬84 🌺26
最近遇到一个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]却不一样。
为什么对同一个地址解引用,结果会不同呢?
求教诸位,
先行谢过。
- 相关回复 上下关系8
🙂【求助】向各位高手请教一个c语言中数组与指针的问题