C語言(八) 指標(2)陣列和指標

2021-08-25 11:27:04 字數 1098 閱讀 9987

函式引數表中的陣列實際上是指標

int main(int argc, char *argv) ;

int min,max;

printf("main sizeof(a) = %lu\n",sizeof(a));

minmax(a,sizeof(a)/sizeof(a[0]),&min,&max);

printf("min == %d\n",min);

printf("max == %d\n",max);

return 0;

}/*這裡的引數int a 可以換成 int *a */

void minmax(int a , int len , int *min , int *max)

if(a[i] > *max) }}

/*執行結果*/

main sizeof(a) = 32 //乙個int 佔4位,8個數佔32位

minmax sizeof(a) = 8 //64位中int * 是8位

min == 1

max == 8

陣列變數本身表達位址

int a = ;

int *p = a;

printf("*p == %d\n",*p);

printf("a[0] == %d\n",a[0]);

printf("p == %p\n",p);

printf("&a[0] == %p\n",&a[0]);

/*取陣列位址的時候,無需用&,可以直接int *p = a, 指標p的位址指向a[0] ,*p取到的值也是a[0]的值 */

/*執行結果*/

*p == 1

a[0] == 1

p == 000000000022fe20

&a[0] == 000000000022fe20

int a = ;

int b = a; //error!! 陣列之間不能互相賦值invalid initializer!因為int b <===> int b

//*const;

int *p = a; //ok

C語言回顧 八 指標

指標 import 指標作為引數可以實現兩個數的交換 指標x和y操作是傳過來的實參a,b所對應的位址空間 void changevalue1 int x,int y void changevalue1 int x,int y 列印陣列全部元素 void printfarray int arr,int...

C語言(八) 指標上

今天我們學習指標,我們現在來了解一下指標它是什麼呢?在電腦科學中,指標是程式語言中的乙個物件,利用位址,它的值直接指向存在電腦儲存器中另乙個地方的值。由於通過位址能找到所需要的變數單元,可以說位址指向該變數單元。因此將位址形象的稱為 指標 意思是通過它能找到以它為位址的記憶體單元。我們可以這麼理解 ...

指標(2)指標陣列 陣列指標 陣列指標陣列

都說指標是c語言的精華所在。今天繼續對指標的探索!指標下一 指標陣列 陣列指標 指標陣列 是存放指標的陣列。如 int p 5 該陣列長度為5,存放的是指向整型變數的指標。陣列指標 是乙個指向陣列的指標。如 int p 5 這是乙個指向長度為5的整型陣列的指標。1.陣列指標在一維陣列中的應用 int...