標(biāo)題: 什么是指針(指針是C語言的靈魂) [打印本頁]
作者: 2515361695 時(shí)間: 2017-3-9 07:26
標(biāo)題: 什么是指針(指針是C語言的靈魂)
什么是指針(指針是C語言的靈魂)
指針就是地址,地址就是指針
地址就是內(nèi)存單元的編號
指針變量就是存放地址的變量
指針和指針變量是兩個(gè)不同的概念
但要注意的是:我們通常把指針變量叫做指針,但是實(shí)際意義不同
指針的本質(zhì)就是一個(gè)操作受限的非負(fù)函數(shù)(指針不能加乘和除,但是能進(jìn)行相減)
基本類型指針
# include <stdio.h>
Int main ()
{
Int *p //p是變量的名字, Int *p 表示p存放的是int類型變量的地址
int*p不變是定義了一個(gè)叫做*p的變量
int*p應(yīng)該這樣理解:p是變量名,p變量的數(shù)據(jù)類型是int*類型
所謂int*類型實(shí)際上就是存放int變量地址的類型
int =3;
Int j;
P=&i
//p保存了i的地址,因此p指向i
p不是i,i也不是p,準(zhǔn)確的說:修改p的值不影響i的值,修改i
的值不影響p的值
p保存i的地址
因?yàn)?/font>p保存i的值,所以p指向i
因?yàn)?/font>p指向i,所以p就是i
星號的用法(*)
*的含義 1.用作乘法
2.定義指針變量
int*p //定義了一個(gè)名字叫p的變量,int*表示p只能存放int變
量的地址
3.指針運(yùn)算符
該指針運(yùn)算符放在已經(jīng)定義好的指針變量的前面
如果p是已經(jīng)定義好的指針變量
則*p表示 以P的內(nèi)容為地址的變量
作者: 51hejerry 時(shí)間: 2018-1-30 10:33
還不是能完全了解,再慢慢看去理解理解,謝謝!
歡迎光臨 (http://www.torrancerestoration.com/bbs/) |
Powered by Discuz! X3.1 |