• <abbr id="kam3m"><form id="kam3m"></form></abbr>

    <u id="kam3m"><li id="kam3m"></li></u>

  • <table id="kam3m"></table>
    
    

    <u id="kam3m"></u>
    18禁无遮挡啪啪无码网站,真人无码作爱免费视频,2018年亚洲欧美在线v,国产成人午夜一区二区三区 ,亚洲精品毛片一区二区,国产在线亚州精品内射,精品无码国产污污污免费,国内少妇人妻偷人精品
    首頁 > 文章中心 > 正文

    C++中指針

    前言:本站為你精心整理了C++中指針范文,希望能為你的創作提供參考價值,我們的客服老師可以幫助你提供個性化的參考范文,歡迎咨詢。

    C++中指針

    摘要:本文對c++各種類型的指針進行了深刻全面地討論,把各種指針的常量,變量的聲明、賦值和訪問都一一列出,這對利用指針開發大型軟件的程序員來說無疑是一個非常有力的工具。本文還揭示了指針變量與數組名的內在關系,以及類的靜態數據指針與非靜態數據指針的根本區別。

    關鍵詞:指針類型、指針常量、指針變量、數組名

    Abstract:AllkindsofpointersinC++arethoroughlyanddeeplydiscussed.Theconstantquantity,variables,theformofendowingwithvalueandaccesstodataarelistedlikeatable.Thisisundoubtedlyausefultooltoaprogrammerwhodevelopsbigsoftwares.Theauthorbringtolighttherelationshipbetweenthepointervariablesandthenameofnumbergroups.Healsorevealstheessentialdistinctionbetweenastaticpointerandnon-staticpointer.

    Keywords:pointertypedata,pointerconstantquantity,pointervariable,anumbergroup’sname

    C++中的“指針”實質上是指針類型的數據,所以指針既有常量,也有變量。但是人們往往只是簡單的說“指針”,沒有帶“常量”或“變量”二字。那么,該“指針”到底是指常量呢還是指變量呢?這個問題要根據它所屬的那個整句才能回答。C++中的指針按照它所指向的對象可以劃分為變量指針、數組指針、函數指針、對象指針、類的成員數據指針和類的成員函數指針。

    一、變量指針

    設type代表任意一種基本類型說明符,X是該類型的變量,則:

    1、X的指針常量為&X。

    2、一個type型指針變量P的聲明格式為:type*P;

    3、使P指向X,也就是說用&X向P賦值的格式為:①用&X初始化;②在聲明了P后向P賦值。

    二、數組指針

    設A是一個有3行4列個type型變量元素的一個二維數組,則:

    1、A有兩個意義:①表示這12個type型變量構成的整體。②表示A<0>的地址,即A=&A<0>。

    A<0>也有兩個意義:①表示A的第一行的4個type型變量構成的整體(A中左下標為0的一行元素);②表示A<0><0>的地址。

    2、①聲明一個指向type型的有3行4列個元素的二維數組的指針P的格式為:type(*P)<3><4>;②聲明一個指向type型的有4個元素的一維數組指針P1的格式為:type(*P1)<4>;③聲明一個指向type型變量的指針P2的格式為:type*P2。

    3、①使P指向A的方式為:用&A初始化P或在聲明了P后向P賦值;②使P1指向A<1>的方式為:用“A+1”初始化P1或在聲明了P1后向P1賦值;③使P2指向A<2><1>的方式為:用&A<2><1>初始化P2或在聲明了P2后向P2賦值。

    4、用A和*來表示A<2><1>的表達式為*(*(A+2)+1),表示A<0><0>的表達式為**A。

    5、按3,①用P和*來表示A<2><1>的表達式為*(*(*P+2)+1);②用P1和*來表示A<2><1>的表達式為*(*(P1+1)+1);③用P2和*來表示A<0><0>的表達式為:*(P-6);

    用P、P1和P2來訪問A的元素有很多優越性,如它們及其表達式可以進行++運算和--運算而指針常量卻辦不到。

    三、函數指針

    設一個函數的原型為:typefun(),則:

    1、fun()的指針常量為fun

    2、聲明一個數據類型為type,形參表為FL的函數指針P的格式為:type(P)(FL);

    3、用一個數據類型為type形參表為FL的函數指針只能指向數據類型為type形參表為FL的函數。按(1)和(2),用P指向fun()的方式為:用fun初始化P或在聲明P后向P賦值。

    4、用P而不用fun來調用fun()的格式為:P(和FL對應的實參表);

    四、對象指針

    設t是A類的一個對象,a和f()分別是A的一個公有變量成員和公有函數成員,則:

    1、t的指針常量為&t;

    2、聲明一個指向A類的對象的指針P的格式為:A*P;

    3、使P指向t的方式為:用&t初始化P或者在聲明了P后再向P賦值。

    4、①用P而不用t來表示t.a的格式為:P->a;②用P而不用t來訪問f()的格式為:P->f();

    五、類的數據成員指針

    設t是A類的一個對象,a是A的一個非靜態type型成員數據,s是A的一個靜態type1型成員數據,則:

    1、①A::a的相對指針常量為&A::a;②A::s的物理指針常量為&A::s

    2、①可以指向A類的type型非靜態成員的指針P1的聲明格式為:typeA::*P1;②可以指向A類type型靜態成員的指針P2的聲明格式為:type1*p2;

    3、①使P1指向A::a的方式為:用&A::a初始化P1或在聲明了P1后向P1賦值;②使P2指向A::s的方式為:用&A::s初始化P2或在聲明了P2后向P2賦值。

    4、①用P1而不用a來訪問t.a的格式為:t.*p1;②用P2而不用s來訪問t.s的表達式為*P2

    六、類的函數成員指針

    設t是A類的一個對象,f(FL1)是A類的一個type型非靜態的函數成員,g(FL2)是A類的一個type1型靜態函數成員,則:

    1、①A::f()的相對指針常量為A::f;②A::g()的物理指針常量為A::g

    2、①可以指向A的非靜態type型形參表為FL1的函數成員的指針P1的聲明格式為type(A::*P1)(FL1);②可以指向A的靜態type1型形參表為FL2的函數成員的指針P2的聲明格式為:type1(*P2)(FL2)

    3、①使P1指向A::f()的方式是:用A::f初始化P1或在聲明了P1后向P1賦值;②使P2指向A::g()的方式是:用A::g初始化P2或者在聲明了P2之后向P2賦值。

    4、①用P1而不用f來訪問t.f()的格式為:(t.*p1)(實參表);這里的“*”為指針說明符而不是指針運算符;②用P2而不用g()來訪問t.g()的格式為:P2(實參表);

    七、指針的特點

    1、數據指針+n=數據指針+(n×這個數據的字節數)(n=整數,n為小數不合法)。如:①設P為一個int型指針,則P+2=P的值+8(2×4);②設P1為一個有3行2列個int型變量元素的數組的指針,則P1+2=P1的值+2×24;③設A類有16個字節,P2是一個A類的指針,則P2+2=P2的值+2×16。

    2、下面的表達式不合法:函數指針+n。

    參考文獻

    <1>譚浩強,《C++程序設計教程》,中國科學技術出版社,1995

    <2>Microsoft、何曉剛譯,《VisualC++4.0教程》,科學出版社,1997。

    <3>劉衛東、沈官林譯,《數據結構C++語言描述》,北京,清華大學出版社,2000

    <4>邱龍、張巍,《C++語言入門》,北京,清華大學出版社,1999

    文檔上傳者
    主站蜘蛛池模板: 91精品蜜臀国产综合久久| 精品乱人码一区二区二区| 女人与牲口性恔配视频免费| 精品国产乱码久久久人妻| 国产丰满乱子伦无码专区| 国产偷国产偷亚洲高清午夜| 九九在线精品国产| 最新国产精品亚洲| 久久月本道色综合久久| 久久精品国产一区二区涩涩| 亚洲国产精品视频一二区| AVtt手机版天堂网国产| 国产亚洲精品aaaa片app| AV喷水高潮喷水在线观看COM| 少妇又爽又刺激视频| 中国老太婆video| 黑人玩弄人妻中文在线| 国产熟女激情一区二区三区| 樱桃视频影院在线播放| 国产怡春院无码一区二区| 免费夜色污私人影院在线观看| 国产精品久久综合桃花网 | 国产美女自慰在线观看| 天天看片视频免费观看| 亚洲精品网站在线观看不卡无广告 | 成年女人毛片免费观看中文| 亚洲精品日韩精品久久| 国产乱子伦视频在线播放| 国产高清精品在线一区二区| 国产精品天天看天天狠| 午夜福利国产一区二区三区| a男人的天堂久久a毛片| 日本污视频在线观看| 好男人社区神马在线观看www| 国产欧美在线观看一区| 无码一区二区三区AV免费| 国产 亚洲 制服 无码 中文| 亚洲精品无码成人A片九色播放| 国产98色在线 | 日韩| 精选国产av精选一区二区三区| 人妻中文字幕亚洲精品|