国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

指針

2019-11-08 02:29:06
字體:
來源:轉載
供稿:網友

指針是用來專門存放地址的數據類型 1、定義一個指針時,必須規定它指向的變量類型,如int* p 【注意:如果寫成int * ipa,ipb,ipc,其實只有ipa是指針類型,ipb、ipc還是int類型】 2、最好能初始化,即int a=47;int* p=&a;,C++編程的一般原則是定義時初始化

指針傳遞 通常,向函數傳遞參數時,在函數內部生成該參數的拷貝,稱為“按值傳遞”。 如果我們傳遞一個指針給函數,實際上就是傳遞外部對象的別名,使函數能修改外部對象。(外部對象:如以下程序中,對于f(),main中的x就是外部對象)

#include <iostream>using namespace std;void f(int* p){ cout<<"p= " <<p <<std::endl; cout<<"*p= "<<*p<<std::endl; *p=5; cout<<"*p= "<<p<<std::endl;}int main(){ int x=47; cout<<"x= "<<x<<std::endl; cout<<"&x= "<<&x<<std::endl; //傳入指針 f(&x); cout<<"x= "<<x<<std::endl; return 0;}

int *p=&x; 定義指針 *p:取指針p指向的變量的值 &x:取變量x的地址

引用傳遞 引用傳遞參數,不用int*傳遞指針,而是用int&傳遞實參的引用,帶引用的參數調用比帶指針的函數調用在語法上更加清晰。

#include <iostream>using namespace std;void f(int& r){ //用int&r作為引用參數,直接傳遞調用者參數的地址 cout<<"&r= "<<r<<endl;}int main(){ int x=47; f(x); return 0;}

理解: 1、指針是指向一個變量的,保存的是該變量的地址,相當于該變量的一個別名,指針傳遞參數相當于保存了該變量的地址,傳遞給調用函數,咋調用函數中通過指針拿到該變量值 2、引用傳遞,實際上就是傳遞實參,而被調用函數的形參是該實參的引用。

void*:意味著任何類型的地址都可以間接引用那個地址。 int*:只能針對int類型變量的地址可以間接引用那個地址。 一旦間接引用void*,就會丟失關于類型的信息,使用前必須轉換。

int i=99;void* vp=&i;*((int*) vp)=3;
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 茂名市| 白水县| 玉树县| 萍乡市| 迭部县| 咸宁市| 繁昌县| 德昌县| 新龙县| 鄱阳县| 石台县| 吉安县| 巢湖市| 安岳县| 巩义市| 五常市| 大邑县| 玉环县| 昌都县| 商水县| 陵川县| 四川省| 尼木县| 平定县| 桂林市| 富民县| 麻江县| 达尔| 瓦房店市| 和硕县| 大埔区| 仁寿县| 孝昌县| 鲁山县| 温州市| 麻城市| 益阳市| 白水县| 娱乐| 旅游| 新源县|