最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

淺談C++中的引用和指針

 更新時間:2023年08月23日 10:25:44   作者:小小草帽  
這篇文章主要介紹了淺談C++中的引用和指針,C++允許為已定義的變量再起一個新的別名,稱為變量的引用名,引用名看起來像是一個變量名,但它是一種特殊變量,稱為引用變量,或簡稱為引用,需要的朋友可以參考下

引用

定義引用變量

C++允許為已定義的變量再起一個新的別名,稱為變量的引用名。

引用名看起來像是一個變量名,但它是一種特殊變量,稱為引用變量,或簡稱為引用。

引用變量與其所引用的變量共用同一個內(nèi)存單元,定義引用變量時不再單獨分配內(nèi)存空間。

注意:引用變量需與被引用變量類型相同

格式:

引用類型 &引用變量名 = 被引用變量名;

示例:

#include<iostream>
using namespace std;
int main(){
	int a = 10;
	int b = 20;
	cout << "a的值: a = " << a << endl;
	cout << endl;
	int &aa = a;  //定義引用變量aa,aa和a共用同一個內(nèi)存單元 
	cout << "引用變量aa的值:aa = " << aa << endl;
	aa = b;
	cout << "a的值變?yōu)?0:a: " << a << endl;
	return 0;
}

運行結(jié)果:

a的值: a = 10
引用變量aa的值:aa = 10
a的值變?yōu)?0:a: 20
--------------------------------
Process exited with return value 0
Press any key to continue . . .

指針

取地址運算符

計算機對內(nèi)存進(jìn)行讀寫操作的最小單位是字節(jié)。為每個字節(jié)指定一個整數(shù)編號,稱為該字節(jié)的內(nèi)存地址。

程序執(zhí)行時,計算機將系統(tǒng)中的空閑內(nèi)存分配給程序中定義的變量。

C++語言提供一個取地址運算符 “&” 來獲取變量的內(nèi)存地址。

格式:

 & 變量名

示例

#include<iostream>
using namespace std;
int main(){
	int a = 10;
	cout << "a的值: a = " << a << endl;
	cout << "a的地址: &a = " << &a << endl;
	return 0;
}

運行結(jié)果:

a的值: a = 10
a的地址: &a = 0x6bfee8
--------------------------------
Process exited with return value 0
Press any key to continue . . .

定義指針變量

只能指向同一類型的不同變量 格式:

 指針類型 *指針變量名;

示例

#include<iostream>
using namespace std;
int main(){
	int a = 10;
	int x = 20;
	cout << "a的值: a = " << a << endl;
	cout << "a的地址: &a = " << &a << endl;
	cout << endl;
	int* b = &a;   //指針b指向a的地址 
	cout << "b指針存儲的a的地址:b = " << b << endl;
	cout << "*b表示間接訪問a的值:*b = " << *b << endl;
	return 0;
}

運行結(jié)果:

a的值: a = 10
a的地址: &a = 0x6bfee4
b指針存儲的a的地址:b = 0x6bfee4
*b表示間接訪問a的值:*b = 10
--------------------------------
Process exited with return value 0
Press any key to continue . . .

指針運算符 *

通過內(nèi)存地址間接訪問變量

示例

#include<iostream>
using namespace std;
int main(){
	int a = 10;
	cout << "a的值: a = " << a << endl;
	cout << "a的地址: &a = " << &a << endl;
	cout << endl;
	int &aa = a;  //定義引用變量aa,aa和a共用同一個內(nèi)存單元 
	cout << "引用變量aa的值:aa = " << aa << endl;
	cout << "引用變量aa的地址:&aa = " << &aa << endl;
	cout << endl;
	int* b = &a;   //指針b指向a的地址 
	cout << "b指針存儲的a的地址:b = " << b << endl;
	cout << "*b表示間接訪問a的值:*b = " << *b << endl;
	return 0;
}

運行結(jié)果

a的值: a = 10
a的地址: &a = 0x6bfee4
引用變量aa的值:aa = 10
引用變量aa的地址:&aa = 0x6bfee4
b指針存儲的a的地址:b = 0x6bfee4
*b表示間接訪問a的值:*b = 10
--------------------------------
Process exited with return value 0
Press any key to continue . . .

訪問一個變量的三種方式(定義一個變量a之后)

  1. 直接訪問(a): 通過變量名a來直接訪問
  2. 通過引用變量名間接訪問(aa): 為變量a定義一個引用變量aa,通過引用名aa來訪問變量a內(nèi)存單元是一種間接訪問的形式,被稱為變量的間接訪問。
  3. 通過內(nèi)存地址間接訪問 (*b): 定義一個指針變量b保存變量a的地址,再通過指針變量b中所保存的地址來訪問變量a的內(nèi)存單元,這是另一種形式的間接訪問。

到此這篇關(guān)于淺談C++中的引用和指針的文章就介紹到這了,更多相關(guān)C++引用和指針內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 貪心算法 WOODEN STICKS 實例代碼

    貪心算法 WOODEN STICKS 實例代碼

    貪心算法 WOODEN STICKS 實例代碼,需要的朋友可以參考一下
    2013-05-05
  • C++基類指針和派生類指針之間的轉(zhuǎn)換方法講解

    C++基類指針和派生類指針之間的轉(zhuǎn)換方法講解

    今天小編就為大家分享一篇關(guān)于C++基類指針和派生類指針之間的轉(zhuǎn)換方法講解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-04-04
  • C/C++中extern

    C/C++中extern "C" 的作用分析

    這篇文章主要介紹了C/C++中extern "C" 的作用,是在進(jìn)行C/C++程序設(shè)計中非常常見的用法,需要的朋友可以參考下
    2014-09-09
  • C++設(shè)計模式之簡單工廠模式實例

    C++設(shè)計模式之簡單工廠模式實例

    這篇文章主要介紹了C++設(shè)計模式之簡單工廠模式實例,工廠模式有一種非常形象的描述,建立對象的類就如一個工廠,而需要被建立的對象就是一個個產(chǎn)品,需要的朋友可以參考下
    2014-09-09
  • C語言之實現(xiàn)輾轉(zhuǎn)相除法的兩種方式

    C語言之實現(xiàn)輾轉(zhuǎn)相除法的兩種方式

    這篇文章主要介紹了C語言之實現(xiàn)輾轉(zhuǎn)相除法的兩種方式,具有很好的參考價值,希望對大家有所幫助,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • C語言結(jié)構(gòu)體成員賦值的深拷貝與淺拷貝詳解

    C語言結(jié)構(gòu)體成員賦值的深拷貝與淺拷貝詳解

    C語言中的淺拷貝是指在拷貝過程中,對于指針型成員變量只拷貝指針本身,而不拷貝指針?biāo)赶虻哪繕?biāo),它按字節(jié)復(fù)制的。深拷貝除了拷貝其成員本身的值之外,還拷貝成員指向的動態(tài)內(nèi)存區(qū)域內(nèi)容。本文將通過示例和大家詳細(xì)說說C語言的深拷貝與淺拷貝,希望對你有所幫助
    2022-09-09
  • Qt使用SQLite數(shù)據(jù)庫存儲管理圖片文件

    Qt使用SQLite數(shù)據(jù)庫存儲管理圖片文件

    這篇文章主要為大家詳細(xì)介紹了Qt如何使用SQLite數(shù)據(jù)庫實現(xiàn)存儲管理圖片文件的功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2023-04-04
  • 淺析VSCode tasks.json中的各種替換變量的意思 ${workspaceFolder} ${file} ${fileBasename} ${fileDirname}等

    淺析VSCode tasks.json中的各種替換變量的意思 ${workspaceFolder} ${file} ${

    這篇文章主要介紹了關(guān)于VSCode tasks.json中的各種替換變量的意思 ${workspaceFolder} ${file} ${fileBasename} ${fileDirname}等,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有參考借鑒價值,需要的朋友可以參考下
    2020-03-03
  • C語言計算分段函數(shù)問題

    C語言計算分段函數(shù)問題

    這篇文章主要介紹了C語言計算分段函數(shù)問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • 老生常談C++getline使用方法

    老生常談C++getline使用方法

    下面小編就為大家?guī)硪黄仙U凜++getline使用方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06

最新評論

凉城县| 阳新县| 阿鲁科尔沁旗| 新余市| 兴安县| 巴青县| 永昌县| 广河县| 商河县| 德州市| 绥中县| 得荣县| 蛟河市| 荃湾区| 平湖市| 万安县| 论坛| 新源县| 清丰县| 益阳市| 加查县| 林口县| 吉水县| 昭平县| 汉源县| 罗平县| 杨浦区| 永州市| 乐昌市| 三亚市| 红安县| 济阳县| 高邑县| 穆棱市| 辛集市| 蛟河市| 乌审旗| 普格县| 肥西县| 堆龙德庆县| 漠河县|