總體了解C (21 指標運算 22 多維陣列)

2022-10-09 22:24:17 字數 662 閱讀 4685

21.指標運算

在c#中,指標運算可以被使用在被標為unsafe修飾符的方法裡。當指標指向乙個可被垃圾收集的物件的時候,編譯器強迫使用fixed關鍵字去固定物件。這是因為垃圾收集器是靠移動物件來**記憶體的。但是如果當你使用原始指標時,它所指的物件被移動了,那你的指標將指向垃圾。我認為這兒用unsafe這個關鍵字是個好的選擇—它不鼓勵開發人員使用指標除非他們真的想這麼做。

22.多維陣列

c#可以建立交錯陣列【譯註:交錯陣列是元素為陣列的陣列。交錯陣列元素的維度和大小可以不同】和多維陣列。交錯陣列和j**a的陣列非常類似。多維陣列使得可以更有效、更準確地表達特定問題。以下是這種陣列的乙個例子:

int [,,] array = new int [3, 4, 5]; // 建立乙個陣列

int [1,1,1] = 5;//【譯註:此行**有誤:應為array[1,1,1] = 5;】

使用交錯陣列:

int array = new int [3][4][5]; // 【譯註:此行**有誤,應為:int array = new int[3];】

int [1][1][1] = 5; 【譯註:此行**有誤:應為array[1][1][1] = 5;】【譯註:小心使用交錯陣列】

若和結構聯合使用,c#提供的高效率使得陣列成為圖形和數學領域的乙個好的選擇。

認識C 21 指標

語法 資料型別 指標名稱 int p 指標和變數建立聯絡 宣告乙個變數 int a 10 獲取變數a的位址賦值給p p a 解引用 可以用來獲取或設定指標指向的變數的值 p 解引用 通過解引用獲取變數a的值 cout p endl 通過解引用直接操作記憶體修改變數a的值 p 100 cout a e...

c指標點滴三(指標運算)

1 include 2 include 3 4void main3 512 13 void main4 14 24 system pause 25 26 27void main5 28 30int p5 a 2 31 printf d a 2 32 p5 p5 2 相當於在陣列內部向後移動兩個元素的...

C語言指標系列三 指標運算本質

c語言指標系列三 指標運算本質 對於如下的宣告 int arr int p p arr 儘管最後乙個語句看起來是將乙個指標賦值為陣列名,但c語言中並不存在指向陣列的指標,日常說某某個指標指向了陣列只不過是一種習慣,並不是說真的有乙個陣列型的指標指向了陣列。事實上,如上面的程式段,因為arr是乙個in...