變數與指標變數的區別

2021-10-25 09:25:42 字數 917 閱讀 1788

1 . 變數名  :  例如    int a = 10   i+j = 10

2 . 位址      :顧名思義它表示的是乙個變數的位址,就好比你的名字是個變數,我可以通過名字來追蹤到你,但我也可以 通過你家的位址去找到你,對余c語言的位址也是一樣的, 還有就是我們要知道    指標 = 位址。

#include

#include

int main()

;int* p;       //指標變數,存放的是位址  此時* 是乙個識別符號

p = &a;       //給指標變數賦值  ,& 是取位址符號   例如:

printf("a的位址為:  %p \n",&a);     // & 取位址, 取變數名所代表的變數的記憶體位址

//這裡我們要注意一下  /*   *p = &a;   */  這麼寫是錯誤的!!!!!!!!!

// * 只有在定義乙個指標變數時侯,才是指標的識別符號

//  其他情況,都是乙個運算子, 也就是說此時的 * 代表的是乙個運算子,跟 +-*/運算類似

//  該運算子的功能是, 取出記憶體位址中資料的值(取內容)例如

printf("通過位址來獲取a的值  a= %d \n",*(&a));    //這時 * 便是取出a 位址中的資料的值

/*我們先找出3個變數的相同點與不同點

1.相同點 

a  c   b  都是變數

2 不同點

變數的型別不同

a = 整數型

c = 字元型

b = 陣列

*//* 那麼接下來我們會問

問:什麼變數能存放位址? 

答:指標變數存放的是位址

問:怎麼才能定義乙個指標變數?

答:例如 int *p;   或   int* p;

*/return 0;

}

指標變數與變數的比較

include 指標變數 1.指標變數存放的一定是記憶體位址,不可以存放其他值。變數比較說明 1.每個變數都有記憶體空間,也就是編譯器會給每個變數分配記憶體位址 2.指標變數也有記憶體位址,但同時指標變數存放的值也是位址 比如 int i 18 名稱 值 記憶體 i 18 3001 3001也就是i...

指標與指標變數

1 i pointer是乙個指標變數,而 i pointer表示i pointer所指向的變數即i。下面兩個語句作用相同 i 3 i pointer 3 2 定義指標變數 基型別 指標變數名 下面都是合法的定義 float pointer 3 pointer 3是指向單精度型資料的指標變數 char...

指標與變數

指標變數是一種特殊的變數,它和以前學過的其他型別變數的不同之處是 用它來指向另乙個變數。為了表示指標變數和它所指向的變數之間的聯絡,在c 中用 符號表示指向,例如,i pointer是乙個指標變數,而 i pointer 表示 i pointer 所指向的變數,見圖6.3。下面兩個語句作用相同 c ...