C 語言中的雙指標** | D棧- Delft Stack

文章推薦指數: 80 %
投票人數:10人

C Pointer. 創建時間: April-20, 2022. C 中變數的記憶體分配; C 指標; C 中指向指標的指標( ** ). 本教程教授如何使用指向指標的指標(雙指標或 ** )來儲存另一個 ... C貼士 C中的try...catch 在C語言中列印數字的二進位制 C語言中標量初始化器的過量元素警告 C語言中的雙指標** C語言中的%p格式說明符 如何在C語言中繪製資料 C語言中的位比較 C語言中開啟一個套接字 reportthisad 貼士文章 C貼士 C語言中的雙指標** C中變數的記憶體分配 C指標 C中指向指標的指標(**) 本教程教授如何使用指向指標的指標(雙指標或**)來儲存另一個指標變數的地址。

C中變數的記憶體分配 在建立變數時,將分配一些特定的記憶體塊給該變數用於儲存值。

例如,我們建立了一個char變數ch和值a。

在內部,一個位元組的記憶體將分配給變數ch。

C指標 在C程式設計中,指標是儲存另一個變數地址的變數。

要訪問該地址中存在的值,我們使用*。

#include intmain() { charch='a';//createavariable char*ptr=&ch;//createapointertostoretheaddressofch printf("Addressofch:%p\n",&ch);//printsaddress printf("Valueofch:%c\n",ch);//prints'a' printf("\nValueofptr:%p\n",ptr);//printstheaddressofa printf("*ptr(valueofch):%c\n",*ptr);//PrintsContentofthevalueoftheptr } 輸出: Addressofch:0x7ffc2aa264ef Valueofch:a Valueofptr:0x7ffc2aa264ef *ptr(valueofch):a 在上面的程式碼中, 建立一個char變數ch並將字元a分配為一個值。

建立一個char指標ptr並儲存變數ch的地址。

列印ch的地址和值。

列印ptr的值,ptr的值將是ch的地址 使用*ptr列印ch的值。

ptr的值是變數ch的地址,在該地址中存在值'a',因此將列印它。

C中指向指標的指標(**) 為了儲存變數的地址,我們使用指標。

同樣,要儲存指標的地址,我們需要使用(指向指標的指標)。

表示儲存另一個指標地址的指標。

要列印指向指標變數的指標中的值,我們需要使用**。

#include intmain() { charch='a';//createavariable char*ptr=&ch;//createapointertostoretheaddressofch char**ptrToPtr=&ptr;//createapointertostoretheaddressofch printf("Addressofch:%p\n",&ch);//printsaddressofch printf("Valueofch:%c\n",ch);//prints'a' printf("\nValueofptr:%p\n",ptr);//printstheaddressofch printf("Addressofptr:%p\n",&ptr);//printsaddress printf("\nValueofptrToPtr:%p\n",ptrToPtr);//printstheaddressofptr printf("*ptrToPtr(Addressofch):%p\n",*ptrToPtr);//printstheaddressofch printf("**ptrToPtr(Valueofch):%c\n",**ptrToPtr);//printsch } 輸出: Addressofch:0x7fffb48f95b7 Valueofch:a Valueofptr:0x7fffb48f95b7 Addressofptr:0x7fffb48f95b8 ValueofptrToPtr:0x7fffb48f95b8 *ptrToPtr(Addressofch):0x7fffb48f95b7 **ptrToPtr(Valueofch):a 在上面的程式碼中, 建立一個char變數ch並將字元a作為值分配給它。

建立一個char指標ptr並儲存變數ch的地址。

建立一個指向指標ptrToPtr的char指標並儲存變數ptr的地址。

ptr將以變數ch的地址作為值,而ptrToPtr將以指標ptr的地址作為值。

當我們像*ptrToPtr那樣取消引用ptrToPtr時,我們得到變數ch的地址 當我們像**ptrToPtr那樣取消引用ptrToPtr時,我們得到變數ch的值 要記住的要點 為了儲存ptrToPtr的地址,我們需要建立 char***ptrToPtrToPtr=&ptrToPtr; printf("***ptrToPtrToPtr:%c\n",***ptrToPtrToPtr);//'a' 相關文章-CPointer C中的函式指標 在C語言中使用指標&符號 解決C語言中的FreeInvalidPointer錯誤 C語言中標量初始化器的過量元素警告C語言中的%p格式說明符 xx



請為這篇文章評分?