如何使用指標,具體介紹下指標用法?

2023-03-04 15:15:04 字數 3499 閱讀 7380

1樓:匿名使用者

這讓人怎麼 要用指標你就要先了解指標 指標的用處很大 必須要會用 不知道你這個問題是從哪問起的。

具體介紹下指標用法?

2樓:匿名使用者

指標的用法很複雜,可以寫一本書,下面我列一下,指標的三個基本概念/*第一段函式,說明指標就是位址,指標變數就是存放某個變數位址的變數。

# include

int main (void)

/*第二段函式,說明如果乙個指標變數p指向了某個普通變數,*p就完全等同於這個變數。

改變了*p的值就改變了他所指向的變數的值。

# include

int main (void)

/*第三段函式,說明指標是除函式返回值以外可以通過被調函式改變主調函式的變數的值的。

# include

void fun (int *p)

int main (void)

3樓:無悔浪人

親 其實指標很簡單的。

4樓:匿名使用者

指標變化無常不好介紹,樓主還是去看c和指標這本書吧!經典的啊!

5樓:網友

指標博大精深啊 在這恐怕是介紹不完吧。

給你推薦本書 c語言現代方法 裡面有指標的介紹。

為什麼要使用指標?指標的好處在**

6樓:匿名使用者

指標使用比較靈活,如果說它的好處,根據我平時程式設計時的感受,大概有這麼幾點:

1.在資料傳遞時,如果資料塊較大(比如說資料緩衝區或比較大的結構),這時就可以使用指標傳遞位址而不是實際資料,即提高傳輸速度,又節省大量記憶體。

2.資料轉換,利用指標的靈活的型別轉換,可以用來做資料型別轉換,比較常用於通訊緩衝區的填充,比如說,乙個資料緩衝區char buf[100],如果其中buf[0,1]為命令號,buf[2,3]為型別,buf[4~7]為某一數值,型別為int,就可以使用如下語句進行賦值:

*(short*)&buf[0]=cmdid;

*(short*)&buf[2]=type;

*(int*)&buf[4]=value;

3.字串指標,是使用最方便,且常用的。

4.函式指標,形如:#define pmyfun (void*)(int,int),可以用在大量分支處理的例項當中,如某通訊根據不同的命令號執行不同型別的命令,則可以建立乙個函式指標陣列,進行散轉。

5.在資料結構中,連結串列、樹、圖等大量的應用都離不開指標。

c語言中指標怎麼使用?

7樓:匿名使用者

我是這樣理解的:

在c語言中,你需要定義變數,那麼你所定義的這個變數本身你要理解兩層含義:

(1)變數中的值是多少?有了值我們可以直接拿變數參與運算,eg. int a=5;在計算的時候a就表示5;

(2)變數儲存在記憶體中的什麼位置?變數的儲存位置,就是變數的位址,那麼這個位址可以用指標來儲存,eg. int a=5, *p=&a; 在這裡p就是指標變數,儲存了變數a的位址,這個時候你要是用a變數的值,即可以直接用a,也可以用*p,*p是通過p這個指標(也就是a的位址),間接的找到a,在程式中*p與a是等價的。

8樓:匿名使用者

指標是指向位址的,所以你對指標修改也會影響到原位址的值,所以當你需要在函式裡修改函式外的變數時可以考慮指標,當然指標還可以連線結構體裡的節點之類的,後面還有跟函式有關的,只要多揣摩就會了解了。

9樓:欣夢魂

指標可以理解為位址即指向位址的指標,在使用之前要明確三個問題,指標的型別,指標指向的型別,指標指向值的記憶體區域。通過傳遞值的位址來傳遞值。

10樓:我是張玉柱

就是位址的位址,之後會學到指標型函式就是函式引數是指標型別的,我們平時學的是int ,float等等,還會學到函式指標就是呼叫函式的位址。

指標的作用是什麼啊?

11樓:網友

第一,指標的使用使得不同區域的**可以輕易的共享記憶體資料。當然小夥伴們也可以通過資料的複製達到相同的效果,但是這樣往往效率不太好。因為諸如結構體等大型資料,佔用的位元組數多,複製很消耗效能。

但使用指標就可以很好的避免這個問題,因為任何型別的指標佔用的位元組數都是一樣的(根據平台不同,有4位元組或者8位元組或者其他可能)。

第二,指標使得一些複雜的鏈結性的資料結構的構建成為可能,比如連結串列,鏈式二叉樹等等。

第三,有些操作必須使用指標。如操作申請的堆記憶體。還有:

c語言中的一切函式呼叫中,值傳遞都是「按值傳遞」的。如果要在函式中修改被傳遞過來的物件,就必須通過這個物件的指標來完成。

12樓:杜爺1號

簡單地說指標就是指向變數和物件的位址。

指標的用途非常廣泛,比如如果你想通過函式改變乙個變數的值,就得用指標而不能用值傳遞。還有在很多時候變數,特別是物件的資料量實在太大,程式設計師就會用指標來做形參,只需要傳遞乙個位址就行,大大提高了效率。

13樓:受優悠

你好! 指標就是指向乙個特定記憶體位址的乙個變數。 c語言指標可以有效地表示複雜的資料結構、動態分配記憶體、高效地使用陣列和字串、使得呼叫函式時得到多個返回值等。

指標的應用往往與陣列聯絡在一起,是最頻繁的,也是最基礎的。在我們定義陣列和函式時,系統都會為其自動分配乙個指向其首位址的指標。對於乙個陣列,其名稱就是乙個指標變數。

14樓:匿名使用者

指標指向位址,指標的特性就是在位址不變的情況下,可以很方便的修改所指向的內容。

最重要的應用有兩個,一是函式引數,二是函式指標函式引數:函式返回值只有乙個,如果想回傳多個引數,則必須使用指標函式指標:典型應用就是**函式(callback)

15樓:斯薇swein丹妮

指標的好處,需要和陣列比較起來說。具體如下:

1.指標可以隨意申請不連續的資料儲存空間,而陣列是連續的,如果陣列空間沒有全部佔用,那麼會造成浪費,比如你申請了a[10],缺只有5個資料輸入,那麼會浪費掉5個陣列空間。如果是指標就不會浪費,用多少申請多少。

2.指標的計算更快速。比如你需要計算乙個16*16的矩陣消元,那麼資料會非常的多和大,你得申請足夠多的陣列空間,弄不好還會造成溢位,為什麼?

因為採用陣列計算時,是資料的交換,而不是記憶體位址的交換。如果採用指標的話,不會浪費空間,不會溢位,因為指標計算時是交換指向資料儲存空間的位址,而不是交換資料。資料的大小比位址大得多。

所以採用指標好處多多,同樣指標也很危險,如果用不好,還不如用陣列。得慢慢體會。謝謝。

16樓:匿名使用者

指標是一種存放另乙個變數的位址的變數。

比如申請乙個整形變數 int a = 128; 再申請乙個指標讓這個指標指向變數a.

int *p;

p = a; /取a在記憶體中的位址,把a的位址賦給p。這樣p就指向了變數a的位址。

指接板的優缺點有哪些?指接板具體介紹

日常生活中,家具是我們家庭必備的用品之一,每個家庭或多或少都有家具的存在。那麼,家具都是什麼材質製成的呢?對於實木類的家具,大家又有多少了解呢?現在市面上有關的木材種類很多,比如木工板 指接板以及生態板等等,對於其中的指接板,相比大家並不清楚,其實有很多家具例如衣櫃 桌子等等都是用指接板製成的,那指...

如何設計績效指標和績效標準如何設計績效指標

一 關鍵績效指標體系的設計 關鍵績效指標中的 關鍵 兩字的含義即是指在某一瞬段乙個企業戰略上要解決的最主要的問題。企業層面的kpi 於企業的戰略目標或企業的年度重點工作計畫。在企業的戰略體系建立以後,接下來的工作就是建立相應的績效指標體系以追蹤和檢查這些戰略目標的完成情況。一 戰略地圖 戰略地圖用來...

誰能具體的介紹一下快乾膠

氰基丙烯酸酯膠是單組分 低粘度 透明 常溫快速固化膠粘劑。又稱為瞬幹膠。粘接面廣,對絕大多數材料都有良好的粘接能力,是重要的室溫固化膠種之一。不足之處是反應速度過快,耐水性較差,脆性大,耐溫低 70 儲存期短,耐久性不好,故配膠時要加人相應的助劑,多用於臨時性粘接。主體材料為特定的氰基丙烯酸酯,再加...