學習C指標之陣列和指標的常用方法

2021-09-28 11:05:02 字數 1212 閱讀 4946

如果將指標作為引數傳遞給函式,此後在函式內部對指標指向的物件填充內容,就可以從函式返回多個值。

例子:

#includevoid func(int *a, double *b) 

int main(void)

想要將型別t的陣列作為引數進行傳遞,可以考慮傳遞「指向t的指標」。可是,作為被呼叫方是不知道陣列的元素的個數的,所以在必要的情況下,需要使用其他方式進行引數傳遞。

例子:

#includevoid func(int *array, int size) 

}int main(void) ;

func(array, sizeof(array)/sizeof(int));

return 0;

}

在需要獲得型別t的可變長陣列時,可以使用malloc()來東台的給「指向t的指標」分配記憶體區域。

但是此時需要程式設計師自己對陣列的元素個數進行管理。

#include#includeint main(void) 

return 0;

}

這陣列指的是:陣列本身的大小是不變的,陣列中的元素的大小是可以變長的。

比如說:一周7天,每一天乙個口號。

進行宣告:char *slogan[7];

例子:

#include#include#includevoid read_slogan(file *fp, char **slogan) 

}int main(void)

return 0;

}

這陣列指的是:陣列本身的大小是可變的,陣列中的元素的大小是可以變長的。

int main();

int main(int argc, char *ar**[ ]);

double (*polyline)[2];   //兩個值構成乙個點的座標

/*npoints是構成多點折線的座標的個數*/

ployline = malloc(sizeof(double[2]) * npoints);

或者這樣寫:

typedef double point[2];

point *polyline;

polyline = malloc(sizeof(point) * npoints);

不想寫了,今天好累啊。

C和指標之指標陣列和指向陣列的指標

定義乙個指標陣列,該陣列中每個元素是乙個指標,每個指標指向 就需要程式中後續再定義 int p 10 定義乙個陣列指標,該指標指向含10個元素的一維陣列 陣列中每個元素是int型 int p 10 我們知道二維陣列名是指向第乙個元素的指標,比如int a3 4 這裡a就是指向乙個包含4個元素陣列的指...

c 陣列指標和指標陣列

先記住 指標陣列 本質是陣列,資料可以用來存放int float等物件,當然也可以存放指標。例子 陣列指標,用樓上的話就是指向陣列的指標,操作指標就可以運算元組如下 int a 3 int p a printf 陣列指標 d n p 1 列印的結果為2,原因是p初始化指向了陣列a的首位址,即a 0 ...

C語言 陣列指標和通過指標引用陣列元素的方法總結

1.陣列指標 即指向陣列的指標 那麼,如何宣告乙個陣列指標呢?int p 10 括號是必須寫的,不然就是指標陣列 10是陣列的大小 拓展 有指標型別元素的陣列稱為指標陣列。2.通過指標引用陣列元素的基本方法 1 小標法 a i 2 指標法 a i 或 p i 或 p i 其中,a是陣列名,p a,即...