国产探花免费观看_亚洲丰满少妇自慰呻吟_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;
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 滁州市| 海阳市| 松原市| 中卫市| 永年县| 禹城市| 乌鲁木齐县| 阿尔山市| 盐边县| 黑山县| 浮梁县| 瑞安市| 怀集县| 正定县| 涟水县| 华亭县| 武邑县| 曲麻莱县| 万州区| 阳新县| 固始县| 安平县| 于都县| 苏尼特右旗| 慈利县| 夏邑县| 防城港市| 福州市| 蓝山县| 周口市| 岳阳市| 沈丘县| 徐闻县| 锦屏县| 仁怀市| 怀集县| 沂水县| 柳江县| 乌兰察布市| 交城县| 临泽县|