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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

数据结构之指针复习

發布時間:2025/3/15 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 数据结构之指针复习 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

廢話不多說,拿起鍵盤就是干,直接上代碼:?

#include <stdio.h>int main() {double *p;double x = 66.6;p = &x; //x占8個字節,一個字節占8位,一個字節一個地址double arr[3] = { 1.1,2.2,3.3 };double *q;q = &arr[0];printf("%p\n", q); //%p 意思就是以16進制輸出q = &arr[1];printf("%p\n", q);printf("%p\n", arr);while (true){}}

輸出結果:?

結論:1,第一個和第三個輸出結果一樣,數組arr保存的是第一個元素arr[0]的地址?,

? ? ? ? ? ?2,double類型占8個字節,每個字節占8位 ,第二個元素的地址=第一個元素的地址+8(逢16進1)

?

?

結論:

1,數組arr存的是數組第一個元素地址,所以數組也是指針

2,arr+1表示arr指針向后移動1位,arr+2表示arr指針向后移動2位

?

通過指針修改? i? 的值,

#include <stdio.h>void f(int *p);int main() {double *p;double x = 66.6;p = &x; //x占8個字節,一個字節占8位,一個字節一個地址double arr[3] = { 1.1,2.2,3.3 };double *q;q = &arr[0];printf("%p\n", q);q = &arr[1];printf("%p\n", q);printf("%p\n", arr);printf("%p\n", arr + 1);printf("%p\n", arr + 2);int i = 100;f(&i);printf("%d\n", i);while (true){}}void f(int *p) {*p = 50; }

?結論:&i 表示去變量 i 的地址? ,將 i 的地址給指針變量 p? ,*p就代表了i? ?所以修改 *p的?值就等于修改了變量i的值

總結

以上是生活随笔為你收集整理的数据结构之指针复习的全部內容,希望文章能夠幫你解決所遇到的問題。

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