指標(一),指標(

來源:互聯網
上載者:User

指標(一),指標(
      談到c語言,不得不提指標,有多少英雄好漢栽在指真上。利用指計可以很方便的使用數組和字串(C#中的String類型就是參考型別,也就是指標類型)。指標支援動態分配記憶體,可以讓程式更簡介,提高效率。     “要想精確打擊,就要人工引導”---軍旅劇中飛彈兵經常會這樣說,指標類似於人工引導的座標。靈活,易用,同時也很複雜,引導錯誤就是毀滅性的打擊。舉個栗子:移動大廈一層有10個方間,編號依次是1-10.其中2號給A公司租用,5-8給公司租用。以每個房間的編號第一個為公司的地址。如果我們要給A公司送快遞,那就是給地址為2的公司送快遞。如果給B公司送快遞就是給地址為5的公司送快遞;      同樣,在編程中系統為了管理記憶體,給記憶體中的每一個位元組都設一個編號。所有變數在記憶體中要戰勝一個或幾個連續的位元組。其中第一個位元組就是該變數的地址。若有INT 類型的A,編譯時間系統會為A分配兩個位元組的儲存單元。假設這兩個位元組的編號分別為:001、002那邊A的地址就是001;

類型* 變數名;---定義指標

&取地址運算子,後面會緊跟一個變數,用來讀取變數的儲存地址;

*:取變數的運算子。用於讀取該指標變的值;

       

////  main.m//  ZhiZhen////  Created by 程英暾 on 2017/3/21.//  Copyright  2017年 程英暾. All rights reserved.//#import <Foundation/Foundation.h>int main(int argc, const char * argv[]) {    @autoreleasepool {               int a=10;//變數        int* b;//指標類型的b        b=&a;//將A的地址給B,也可以說B代表A的地址        NSLog(@"列印指標B所指向的地址中的值:%d",*b);//列印指標中所指向a的值        *b=20;//給指標賦值,也就是通過B給變理量a賦值        NSLog(@"a的值已經改變,其值為:%d",a);//a的值改變了    }//@autoreOVER    return 0;}
--------------------result--------------------2017-03-21 22:20:29.835850 ZhiZhen[8931:355806] 列印指標B所指向的地址中的值:102017-03-21 22:20:29.836091 ZhiZhen[8931:355806] a的值已經改變,其值為:20 

    

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.