<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. C語言

    C語言的指針

    時間:2024-12-21 19:29:03 C語言 我要投稿

    C語言的指針

      我們在使用c語言進行編寫程序的時候,就一定會使用上指針,指針的操作是編寫程序的一個點。

      這里,小編就分享一下自己在使用c語言編程過程中,對于指針的理解:

      系統為每一個內存單元分配一個地址值,C/C++把這個地址值稱為“指針”。如有int i=5;,存放變量i的內存單元的編號(地址)&i被稱為指針。

      指針變量”則是存放前述“地址值”的變量,也可以表述為,“指針變量”是存放變量所占內存空間“首地址”的變量(因為一個變量通常要占用連續的多個字節空間)。比如在int i=5;后有一句int *p=&i;,就把i的指針&i賦給了int *型指針變量p,也就是說p中存入著&i。所以說指針變量是存放指針的變量。

      有一個事實值得注意,那就是有不少資料和教科書并沒有如上區分,而是認為“指針是指針變量的簡稱”,如對int *p=&i;的解釋是:聲明一個int *型指針p,并用變量i的地址初始化;而嚴格說應該是聲明一個int *型指針變量p才對。所以有時看書要根據上下文理解實質,而不能過于拘泥于文字表述。

      1:指針是一個地址,指向的是個類型:

      我們知道,c語言中的類型有int,char,bool(這個不常用),一般我們使用int,char就可以滿足一般的類型需求的,如果對于變量的長度過大,就是用long ,float,double,關于各個類型使用的的長度問題,可以使用sizeof(int)或者sizeof(long)來查看各個類型,在系統中的小。

      而指針就是一個8個字節(64系統)。

      2:指針指向的是地址,地址指向的是內容:

      我們需要一個變量,來存儲地址,這個變量的值是地址,但是我們可以通過修改變量的值,來不斷的改變地址,但是,我們如果需要改變該個地址的值的話,就需要,對地址的值進行修改,而不改變地址。

      int a = 10;

      int *p ;

      p = &a;

      *p =11;

      a=?

      這里我們看到,p 是一個變量,我們使用p來存儲變量a的地址,這是,我們使用*p對于這個變量進行賦值,那么a的值最后,是多少呢,結果是11,因為我們使用*p賦值,就相當于a=11,賦值效果一樣的。

      3:指針的指針,是面對于指針的變量:

      我們說,指針的指針的時候,就有點不清楚了,到底怎么區分指針和指針的指針呢。

      char *p;

      char **pr;

      pr = &p;

      我們這樣看就清楚了一點,char *(*pr); *pr是一個存儲的值為指針的變量,pr就是存儲上個變量地址的變量。整合起來就是,pr是一個存儲的值為指針的地址的變量。

      這樣,我們就基本,對于指針有一個直接的了解了。

    【C語言的指針】相關文章:

    C語言指針的總結08-12

    C語言指針教學10-28

    C語言指針的用法07-02

    什么是C語言中指針 C語言指針的基礎使用10-01

    C語言指針的傳遞10-13

    對C語言指針的總結08-27

    C語言指針的概念08-20

    C語言指針函數和函數指針詳解09-29

    C語言指針相關知識09-17

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人