奶头挺立呻吟高潮av全片,成人试看120秒体验区,性欧美极品v,A片高潮抽搐揉捏奶头视频

C語言

c語言之指針基礎知識

時間:2025-06-04 07:00:26 C語言 我要投稿
  • 相關推薦

c語言之指針基礎知識

  將指針和普通變量進行比較,將有助于您理解指針。所謂“普通變量”就是存儲器中能夠保存數值的一個位置。例如,當您聲明變量i為一個整數時,四個字節的存儲空間就為它預留出來了。程序中用i表示那個預留出的位置。在機器的層面上看,這個位置具有一個內存地址。從這個地址開始的四個字節對您(程序員)來說就是變量i,它們可以保存一個整數。

c語言之指針基礎知識

c語言之指針基礎知識

  指針就不同了。指針是指向另一個變量的變量。意思是一個指針保存的是另一個變量的內存地址。換句話說,指針保存的并不是普通意義上的數值,而是另一個變量的地址值。一個指針保存了另一個變量的地址值,就說這個指針“指向”了那個變量。

  因為指針保存了地址而不是數值,所以它有兩個部分。指針本身保存一個地址,這個地址又指向一個數值,即:指針本身和被指向的數值兩部分。這個概念開始可能有些不好理解,而一旦掌握將是極有裨益的。

  下面的例子顯示了一個典型的指針:

  #include

  int main()

  {

  int i,j;

  int *p;

  p=&i;

  *p=5;

  j=i;

  printf("%d %d %d ", i, j, *p);

  return 0;

  }

  程序的第一行聲明了兩個普通的整型變量i和j。int *p這行聲明了一個名為p的指針。它告訴編譯器,所聲明的變量p是一個指向整數的指針。*表示聲明的是指針而不是普通變量。您可以創建任何類型的指針:float,結構體,char等等。只要用*指出您要的是指針而非普通變量即可。

  p=&i 這行您肯定還沒見過。C語言中, 這個表達式的意思就是“將i的地址賦值給p。”這條語句一經執行,p就“指向”了i。而此前p的內容是一個未知的隨機地址,直接使用的話很可能會導致程序錯誤或類似的程序崩潰。

  畫圖是觀察程序運行過程的好方法。聲明i、j和p后,程序的狀態是這個樣子:

  上圖中的三個變量i、j和p都被聲明過了,但還沒有初始化。所以將兩個整型變量以含有問號的方框表示——程序執行到這一步時它們的內容可以是任何值。將指針以圓圈表示,以區別于保存數值的一般變量,隨意的幾個箭頭表示它現在可能指向任何一個位置。

  執行了p=&i這行后,p被初始化為指向i,像這樣:

  p指向i之后,i代表的內存位置就有了兩個名字。它除了叫做i,現在還叫做*p。這就是為什么說C中的指針變量有兩個部分:p是容納地址的`位置,而*p是地址指向的位置。因此*p=5的意思是將p指向的位置的值設為5,像這樣:

  因為*p和i代表同一位置,i的值自然也就變成了5。于是j=i;將j也設為5,printf語句的輸出就是5 5 5。

  指針的主要特性是它天生具有兩部分。指針本身除了保存地址,還指向某種類型的值,而這個值的地址正是指針保存的那個。在上面的例子中,指針本身是p,它指向的值是*p。

【c語言之指針基礎知識】相關文章:

C語言之復雜指針詳解02-01

C語言指針和數組基礎知識04-22

C語言的指針12-21

C語言指針教學02-10

C語言指針的用法07-02

C語言指針的概念02-25

對C語言指針的總結03-30

C語言指針的總結08-12

C++ this指針詳解07-04

主站蜘蛛池模板: 涿州市| 巴中市| 富锦市| 通山县| 布尔津县| 千阳县| 大渡口区| 景德镇市| 邢台县| 梓潼县| 潜山县| 尉犁县| 孝昌县| 汽车| 湖北省| 堆龙德庆县| 日土县| 灵璧县| 紫阳县| 孙吴县| 荆州市| 桃江县| 乌鲁木齐市| 鄢陵县| 肃北| 建德市| 兴宁市| 古浪县| 黑河市| 诸暨市| 奉贤区| 石门县| 郯城县| 舒城县| 沭阳县| 曲沃县| 仪征市| 永修县| 舞钢市| 嵩明县| 芒康县|