普通變數 一維指標 二維指標的記憶體印象

2021-06-16 09:18:07 字數 552 閱讀 1222

先看一道小題目

已知有如下程式:

void main()

int a[5] = ,*b;

b =(int*)malloc(sizeof(int));

;printf("%d\n",*b);

要使程式輸出為a[2]的值,則下列有關函式fun的定義和下劃線處對應的fun呼叫語句正確的有( )。

a、void fun(int*s,int*d)

呼叫: fun(a,&b)

b、void fun(int*s,int&d)

呼叫: fun(a,b)

c、void fun(int*s,int &d)

呼叫: fun(a,*b)

d、void fun(int*s,int **d)

呼叫: fun(a,&b)

正確答案:cd

普通變數、一維指標、二維指標的記憶體印象

二維陣列的指標變數

如何理解二維陣列的指標變數 例如 a 3 4 是乙個二維陣列,a是二維陣列的陣列名,按照之前一維陣列的理解,它指的是整個陣列的首位址,首先想到的其應該是a 0 0 的位址,其實從邏輯上來講這是不對的,雖然數值確實一樣。因為二維陣列是元素為一維陣列的陣列,即a 3 4 指的是乙個陣列,其中陣列元素是a...

二維陣列的指標及其指標變數

1 二維陣列的指標 有定義語句 int a 3 4 從二維陣列角度看,陣列名a 代表陣列的起始位址,是乙個以行為單位進行控制的行指標,由一維陣列構成的一維陣列就是二維陣列,a i 是行指標值,指向二維陣列的第i 行。a i 是列指標值,指向第i 行第0 列。a i 陣列元素a i 0 的值。用a 作...

指標與一維 二維陣列

示例程式 includevoid main int i,j 用陣列名做指標輸出資料 第一種方式 printf s n m 第二種方式 for i 0 m i 0 i printf c m i 注意點1 printf n 通過定義指標型變數輸出 char p m 將陣列首位址賦給指標變數p 第一種方式...