指標與陣列學習筆記

2021-06-29 13:43:40 字數 595 閱讀 2509

1.  指標與位址

&:取址符,只能應用於記憶體中的物件,即變數和陣列元素

*:間接定址和間接引用運算子,看下面的**:

intx=1, y=2, z [10];

int*ip;  //ip是int型別的指標

ip=&x;    // 指標ip現在指向x,ip儲存x的位址

y=*ip;    //y的值現在為1

*ip=0;    //x現在的值是0

ip=&z[0];//指標ip現在指向z[0]

double*db,atof(char *); //atof的引數是乙個指向char型別的指標

2.  指標與函式引數

由於c語言中是以值傳遞的方式將引數傳給呼叫函式,因此被呼叫函式不能直接修改外部變數的值

例如:排序演算法會使用到swap函式來交換兩個次序顛倒的元素

voidswap(int x,int y)

呼叫該函式swap(a,b);不會影響到a、b的值,該函式僅僅交換了a和b的副本的值。

將swap函式修改為:

voidswap(int *px,int *py)

把需要交換的變數指標傳遞給swap函式:swap(&a,&b)

C語言學習筆記 指標 指標陣列與陣列指標

指標陣列 是乙個陣列,陣列元素為指標 陣列指標 是乙個指標,指向陣列的指標 例如 int p1 5 int p2 5 對於語句int p1 5 因為 的優先順序要比 要高,所以 p1 先與 結合,構成乙個陣列的定義,陣列名為 p1,而 int 修飾的是陣列的內容,即陣列的每個元素。也就是說,該陣列包...

陣列與指標(筆記)

陣列和指標的關係 函式引數表中的陣列實際上是指標 sizeof a sizeof int 可以用陣列的運算子進行運算 include void minmax int a,int len,int min,int max 定義最大值和最小值函式 intmain int min,max printf ma...

C 學習筆記4 陣列與指標

陣列和指標 1.int pi 0 pi不指向任何物件。指標最好應初始化,如果須分開定義指標和其所指向的物件,則將指標初始化為0.2.把int型變數賦給指標是非法的,儘管此int型變數的值可能為0.但允許把數值0或在編譯中可獲得0值的const量賦給指標。3.如果把指向const的指標理解為 自以為指...