今天把學到的指標的知識整理了一下,希望對你們有所幫助。
2、語法:int *point;
3、指標的使用:
(1)在此舉出乙個簡單的demo:
注釋為紅色字型
#include
int main()
// 初始化,宣告變數的同時,給變數賦值
int myint=200;
// 宣告乙個指標,初始化的值是myint的位址
int *mypointer = &myint;
// 列印myint 的位址
printf("the myint's address is %p\n",&myint);
// mypointer存放的資料是位址,在這裡是myint的位址
printf("the mypointer point address is %p\n",mypointer);
*mypointer=200;
printf("the myint'x value is %d\n",myint);
return 0;
輸出結果如下:
the myint's address is 000000000061fe44
the mypointer point address is 000000000061fe44
the myint'x value is 200
(2)這個demo是比前面的那乙個更深入一點
int main(void)
int value=1000;
chan**arvalue(&value);
//value是個具體的值,要輸出他的所在的位址的話,要加&符號
printf("the value'adress is %p\n",&value);
printf("in main the value is %d\n",value);
return 0;
void chan**arvalue(int *pvalue)
*pvalue=100;
//pvalue表示乙個指標,指定的位址存放的內容,取他的位址的話不用加*符號
printf("the pvalue'address is %p\n",pvalue);*
printf("in chan**arvalue the oldvalue is %d\n",*pvalue);
他的輸出結果是:
the pvalue'address is 000000000061fe4c
in chan**arvalue the oldvalue is 100
the value'adress is 000000000061fe4c
in main the value is 100
*pvalue 表示的是指定位址所存放的內容,所以當我們想要輸出他的位址是多少時,*號就不需要了;
如果變數是具體值的話,想要得到他的位址時,需要加上&符號。
指標存放資料的位址也需要記憶體空間進行存放。
以上總結的知識希望對你你有所幫助。
c語言 指標定義
指標 精髓 指標 位址 通過變數名訪問變數,稱為直接儲存 通過位址 指標 訪問變數,稱為間接儲存 1.定義指標變數 基型別 指標變數名 說明 基型別可以是任意資料型別 說明其後的變數名為指標變數名 指標變數名是任意合法的識別符號 例如int pointer 1 2.指標變數賦值 1 先定義後賦值 i...
C C 指標的定義及用法
2 變數與大小 sizeof操作符,int大小是4位元組 變數的大小指的是它在記憶體中佔了幾個位元組。3 變數有位址,變數的位址就是該變數在記憶體中的位置。可用 號取得位址。4 變數的賦值,就是向記憶體寫入資料,讀變數的值,就是從記憶體中讀取資料。5 每個變數都有自己的記憶體位址,絕不會有2個變數的...
C語言指標1 定義
指標是乙個變數,儲存的是另乙個變數的位址。例如,有如下 int a 3 int ptr a 定義乙個指向整形的指標,變數前加乙個 即為乙個指標變數 可以這麼理解,定義變數a後,系統為a分配乙個大小為sizeof int 的空間,該空間的位址存放在變數ptr中。如果printf p ptr 則列印輸出...