標(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不是ii也不是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