【C語言—零基礎第十一課】旋轉大轉盤之指針
旋轉大轉盤之指針
目錄
指針是什么?
指針的定義
指針的賦值
指針的操作
指針的引用
指針是什么?
在生活中我們應該玩過旋轉大轉盤游戲,指針指到哪個物品我就拿走哪一個物品,這個就是指針。在現實生活中你玩旋轉大轉盤游戲最后獲獎了嗎?還有一種就是我們的門牌號我們可以把它想象成為指針,只要我們和其他人說了我們的門牌號他就可以順著門牌號找到你,而在我們C語言中也有指針。
指針定義
為了說清楚什么是指針,必須先弄清楚數據在內存中是如何存儲的,又是如何存儲的又是如何讀取的。如果在程序中定義了一個變量,在對程序進行編譯時,系統就會給這個變量分配內存單元。編譯系統根據系統中定義的變量類型,分配一定的長度。內存區的每一個字節都有一個編號,這就是“地址”,它相當于旅館中的門牌號。在地址所標志的內存單元中存放的數據則相當于旅館房間中居住的旅客。
由于通過地址就能找到變量單元,可以說,地址指向該變量單元。比如一個房間的門口掛了201房間,這個就是房間的地址。或者說,201“指向”該房間。因此,將地址形象化成為“指針”。通過它就能找到以它為地址的內存單元。
指針即地址,變量的指針就是變量的地址。
指針的定義
定義指針變量的一般形式為:基地址*指針變量
*為指針說明符號
int *p;
指針的賦值
1.通過取地址運算符:&
int a,*b; b=&a;
2.通過另一個地址
int a,*q,*p; q=&a; p=q;
3.空指針的定義
int *p=NULL;
說明
1. NULL表示空,其值為0
2. 空指針定義后不能引用
指針的操作
&:取地址運算符 只能對內容取地址
*:取內容運算符 只能對地址取內容
#include
結果:5
指針的引用
輸入兩個值進行其值交換后輸出
int a,b,*p,*q; q=&a; p=&b; scanf("%d%d",q,p); printf("%d,%d\n",a,b);//5,5 printf("%d,%d\n",*q,*p);//5,5 *q=3; *p=2; printf("%d,%d\n",a,b);//3,2
函數之間的地址傳遞
#include
C 語言
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。