日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

复杂的数据类型3 - C++快速入门09

發布時間:2024/10/8 c/c++ 247 豆豆
生活随笔 收集整理的這篇文章主要介紹了 复杂的数据类型3 - C++快速入门09 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

復雜的數據類型3

?

讓編程改變世界

Change the world by program


?

“走后門” —— 利用指針改變值

?

溫故而知新:

創建變量時,系統將分配一些內存塊用來保存它們的值; 每個內存塊擁有一個獨一無二的地址; 變量的地址可以用 &variablename 語法來取得;(注:& 我們稱為 ”取地址” 操作符) 可以把地址賦值給一種稱為指針的特殊變量; 指針的類型必須與由它保存其地址的變量的類型一致。 ?

接下來給大家介紹點真正的好東西:

int a = 456;

char b = ‘C’;

int *aPointer = &a;

Char *bPointer = &b;

? 這會讓程序保留4個內存塊,兩個為變量保留,兩個為指針保留。 變量a 和變量b 里邊存放的是變量的值; 兩個指針變量存放著指針的值,這些值是其他變量的地址。 [caption id="attachment_455" align="aligncenter" width="300"] 指針[/caption] ? 當我們知道了某個變量在內存中的地址(通過指針),就可以利用指針訪問位于該地址的數據。 這需要對指針進行 ”解引用(Deference)”處理:即在指針名的前面加上一個星號(*)。 如: std::cout << *aPointer; ? 這里我們來理解一下:把整數變量 a 的地址存儲在 aPointer 指針里之后,*aPointer 和變量 a 將代表同一個值。 因此: *aPointer = 123; 將會 = >> [caption id="attachment_456" align="aligncenter" width="300"] 指針[/caption] ?

課堂實例解析

Pointer.cpp (源代碼下載) ?

課后思考

?

1. 一定要牢記的事實:指針所保存的是內存中的一個地址。它并不保存指向的數據的值本身。

因此,務必確保指針對應一個已經存在的變量或者一塊已經分配了的內存。 ?

2. 星號有兩種用途,時常困惑了初學者:

第一種是用于創建指針:

[ex] int *myPointer = &myInt;

第二種是對指針進行解引用:

[ex] *myPointer = 3998;

?

3. C++ 允許指針群 P,就是多個指針有同樣的值

int *p1 = &myInt;

int *p2 = &myInt;

?

4. C++ 支持無類型(void)指針,就是沒有被聲明為某種特定類型的指針,例如:

void *vPointer;

注意:對一個無類型指針進行解引用前,必須先把它轉換為一種適當的數據類型。(日詳) [buy]?獲得所有教學視頻、課件、源代碼等資源打包?[/buy] [Downlink href='http://urlxf.qq.com/?BRniQzM']視頻下載[/Downlink] [Downlink href='http://kuai.xunlei.com/d/LNESZACKRUNE']備胎下載[/Downlink]

轉載于:https://www.cnblogs.com/LoveFishC/archive/2011/11/24/3846161.html

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的复杂的数据类型3 - C++快速入门09的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。