c 指標 和 陣列

2021-09-23 15:31:38 字數 1764 閱讀 4797

#include#include/**

指標 就是記憶體位址

記憶體位址 就是指標

指標就是位址,位址就是指標

位址就是記憶體單元的編號

指標變數是存放位址的變數

指標和指標變數是兩個不同的概念

但是要注意 通常敘述會把指標變數簡稱為指標 實際含義不同

**//*

*/void sitch(int* a,int* b)

main();

int iarray = ;

//取陣列的值: h e 5 4

printf("carray[0] = %c\n",carray[0]);

printf("carray[1] = %c\n",carray[1]);

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

printf("iarray[1] = %d\n\n",iarray[1]);

// carray[0]位址 = 6487520

// carray[1]位址 = 6487524

// carray[2]位址 = 6487528

// carray[3]位址 = 6487532

printf("carray[0]位址 = %#x\n",&carray[0]);

printf("carray[1]位址 = %#x\n",&carray[1]);

printf("carray[2]位址 = %#x\n",&carray[2]);

printf("iarray[0]位址 = %#x\n",&iarray[0]);

printf("iarray[1]位址 = %#x\n",&iarray[1]);

printf("iarray[2]位址 = %#x\n",&iarray[2]);

printf("iarray[3]位址 = %#x\n\n",&iarray[3]);

//用 指標取值:

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

printf("iarray[0]== %d\n",*iarray+0); //對應值 +1

printf("iarray[1]== %d\n",*iarray+1); //對應值 +1

printf("iarray[2]== %d\n",*iarray+2); //對應值 +1

printf("iarray[3]== %d\n",*iarray+3); //對應值 +1

printf("iarray[0]== %d\n",*(iarray+0));

printf("iarray[1]== %d\n",*(iarray+1));

printf("iarray[2]== %d\n",*(iarray+2));

printf("iarray[3]== %d\n",*(iarray+3));

//---------------使用者輸入乙個陣列 並列印出來:------------------------

printf("請輸入陣列的長度:\n") ;

int length;

scanf("%d",&length);

printf("您輸入的陣列長度為:%d\n",length);

//2,根據使用者輸入陣列長度 建立陣列

int harray[length];

int k;

for(k=0;k//列印陣列

for(k=0;ksystem("pause");

}

C指標陣列和陣列指標

測試 int main 定義二維陣列m並初始化 int p 4 陣列指標 p是指標,指向一維陣列,每個一維陣列有4個int元素 int i,j int q 3 指標陣列 q是陣列,陣列元素是指標,3個int指標 p m p是指標,可以直接指向二維陣列 printf 陣列指標輸出元素 n for i ...

c 陣列 和 陣列指標

今天 乙個朋友 面試,面試題如下 int tmain int argc,tchar argv int ptr int a 1 printf d t d a 1 ptr 1 return 0 我覺得 指標 只要 掌握 兩方面資訊 就 沒什麼 可難的了.一是 指標變數 裡 存放的 位址 二是 指標變數 ...

C指標和陣列

c語言中,陣列需要注意的地方有兩點 1 c語言中只有一維陣列,陣列大小必須在編譯期就作為乙個常數確定下來,陣列中元素可以是任何型別物件,當然也可以是另外乙個陣列,這樣,要 出乙個多維陣列就不是一件難事了 2 對於乙個陣列,我們只能做兩件事 確定陣列大小,及獲得該陣列下標為0元素的指標,其他關於陣列操...