簡體   English   中英

從C#中的double數組創建指針數組

[英]Create array of pointers from an array of double in C#

我正在嘗試創建一個指向雙數組的指針數組。 例如;

double[] mylist = new double[100];
fixed (double* p = mylist) { }

現在正如MSDN文檔所述,這相當於p =&mylist [0]這只取第一個值,是否可以在另一個數組中創建指向變量的指針數組? 或者是只使用一個指針的做法?

提前感謝您的幫助

數組元素位於連續的內存中,因此通常有足夠的指針指向第一個元素並執行指針算術以獲取其他元素。

當你有一個輸入指針的矢量(或者,更精確地, 載體的第一項),它的工作原理類似於C / C ++; 你需要的是單指針,並且可以使用它無論是作為單個項作為基於零陣列; 你仍然可以訪問p[3] ,除了現在而不是使用數組訪問隱喻,這是應用“3 * the-item-size作為相對於p的偏移量”。 所以:

p[3] = 1.0;

很好。 注意,當然,如果你去了數組邊界之外的意外,不好的事情會發生。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM