歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> C++二維指針或指針參數

C++二維指針或指針參數

日期:2017/3/1 10:08:41   编辑:Linux編程

前幾天遇到C語言一個小問題,覺得還是比較有意義的,還是記下來吧

結構體

struct s

{

int i;

double d;

};

在main中有一個指向這個數據結構的指針,實際上是指向若干個連續空間的指針

s* my_s;

條用 get()函數希望能對s所指向的空間賦值。同時,空間的大小只能在get函數中計算

其實這個問題就是一個簡單的二維指針的問題

get(s** _s)

{

int len = getlen();// 計算要多大的空間

*s = new s[len];

for(int l=0;l<len;l++)

{

(*s)[l].i = l;

(*s)[l].d = 0.5;
}
}

main()

{

s* _s;

get(&_s);

//說明,這裡如果遍歷_s指針,不要用_s++,因為這樣在釋放_s的時候會出錯!

delete [] _s;
}

Copyright © Linux教程網 All Rights Reserved