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

直觀理解C語言中指向一位數(shù)組與二維數(shù)組的指針

 更新時間:2016年05月07日 16:29:31   作者:永遠(yuǎn)的晴天  
這篇文章主要介紹了直觀理解C語言中指向一位數(shù)組與二維數(shù)組的指針,數(shù)組指針是C語言入門學(xué)習(xí)過程中的重點(diǎn)和難點(diǎn),需要的朋友可以參考下

一維數(shù)組和指針:
對于一位數(shù)組和指針是很好理解的:
一維數(shù)組名:
對于這樣的一維數(shù)組:int a[5];  a作為數(shù)組名就是我們數(shù)組的首地址, a是一個地址常量 .
首先說說常量和變量的關(guān)系, 對于變量來說, 用箱子去比喻再好不過了, 聲明一個變量就聲明一個箱子,比如我們開辟出一個蘋果類型的箱子, 給這個變量賦值就是把盛放蘋果的箱子中放入一個實(shí)實(shí)在在的蘋果, 這就是變量的賦值. 
而對于數(shù)組來說, 就是一組類型相同的箱子中,一組蘋果箱子, 可以放入不同的蘋果.
一維數(shù)組空間:
變量被聲明后, 我們操作編譯器, 對我們的C源文件進(jìn)行編譯, C在編譯的時候 就會給我們的變量開辟相應(yīng)的空間, 而對于數(shù)組而言, 開辟的空間是連續(xù)的.   我們把每個空間叫做存儲單元, 每個空間都是有自己的編號, 就像我們現(xiàn)實(shí)生活中每戶人家都有自己的一個門牌號一樣, 系統(tǒng)數(shù)組空間地址是相連的, 并且我們的數(shù)組名就是一維數(shù)組首地址, 是一個地址常量.
指針:
既然數(shù)組的是占用連續(xù)的存儲單元, 并且數(shù)組的首地址就是數(shù)組名, 我們可以通過指針變量來取出相應(yīng)的地址.
指針變量, 就是這個箱子是專門存放其他箱子地址的. 我們可以把數(shù)組首地址給我們的指針變量. int a[7],*p; p=a;

201657162334919.jpg (396×188)

二維數(shù)組和指針的理解:

對于初學(xué)者對二維數(shù)組和指針的理解很模糊, 或者感覺很難理解, 其實(shí)我們和生活聯(lián)系起來, 這一切都會變得清晰透徹.
我們用理解一維數(shù)組的思想來理解二維數(shù)組, 對于一維數(shù)組,每個箱子里存放的是具體的蘋果, 二維數(shù)組,就是把一維數(shù)組中的內(nèi)容中又存放了一系列的箱子, 這樣就構(gòu)成了二維數(shù)組.
這就像一輛火車, 火車有很多節(jié)火車廂, 每個火車廂里面有一趟座位, 那我們火車廂的編號和每個火車座位的編號就不同了.  例如int  a[3][4] ; 3節(jié)火車廂, 每個火車廂中有四個挨著的座位.  實(shí)際的座位的編號和我們的火車廂的編號這是我們要區(qū)分開的,  我們的火車廂編號就是a[0],a[1],a[2](從座位的角度上來看)
從外面看, 我們每節(jié)火車廂的地址, a+0,a+1,a+2, a就相當(dāng)于一個行地址, 火車廂為單位的地址, a+1是跳到下一個車廂的首地址,  而a[0]就相當(dāng)于是座位的首地址, a[0]+0就會跳到第0節(jié)車廂的第0個座位, a[0]+1就會跳到第0節(jié)車廂的第1一個座位.

201657162403111.jpg (721×435)

指針數(shù)組指向二維地址(座位的地址,實(shí)際地址):
建立一個指針數(shù)組來引用二維數(shù)組中的元素:int *p[3], a[3][2],i,j; 從各種可以看到p是一個數(shù)組名, 在定義時系統(tǒng)給他開辟3個連續(xù)的存儲單元; 在這個前面加上*號表示, 數(shù)組的基本類型為int的指針類型. 我們可以通過for循環(huán)讓這個數(shù)組里面的指針指向每排"座位"的首地址:

201657162430649.jpg (337×319)

這個數(shù)組可以理解為是"座位"地址類型數(shù)組.
而下面我們定義的這個數(shù)組: int a[3][2], (*prt)[2] 為行指針數(shù)組(火車車廂數(shù)組). 這樣我們可以把每節(jié)"車廂的地址"放入到我們的行指針數(shù)組變量中了.
這樣我們可以把a(bǔ)這個行地址常量賦值給行地址變量 p=a. p+1等價于a+1,等價于a[1] 當(dāng)p指向數(shù)組的首地址時, 可以通過以下形式來引用p[i][j]:
(1) *(p[i]+j)
(2)*(*(p+i) +j ))
(3)(*(p+i))[j]
(4)p[i][j]
p是一個行指針變量, 而二維數(shù)組名a是一個行地址變量.
以上就是對二維數(shù)組和指針的理解.
        

相關(guān)文章

  • C++學(xué)習(xí)筆記之淺談異常處理

    C++學(xué)習(xí)筆記之淺談異常處理

    C++ 提供了異常機(jī)制,讓我們能夠捕獲運(yùn)行時錯誤,本文就詳細(xì)的介紹了C++異常處理入門,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-10-10
  • Qt中QGroupBox控件的實(shí)現(xiàn)

    Qt中QGroupBox控件的實(shí)現(xiàn)

    QGroupBox 是 Qt 框架中一個非常有用的控件,它主要用于組織和管理一組相關(guān)的控件,本文主要介紹了Qt中QGroupBox控件的實(shí)現(xiàn),具有一定的參考價值,感興趣的可以了解一下
    2025-04-04
  • C++ Primer Plus詳解

    C++ Primer Plus詳解

    這篇文章主要為大家詳細(xì)介紹了C++ Primer Plus,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-02-02
  • C++實(shí)現(xiàn)簡單貪吃蛇游戲

    C++實(shí)現(xiàn)簡單貪吃蛇游戲

    這篇文章主要為大家詳細(xì)介紹了C++實(shí)現(xiàn)簡單貪吃蛇游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • Qt實(shí)現(xiàn)線程與定時器的方法

    Qt實(shí)現(xiàn)線程與定時器的方法

    本文主要介紹了Qt實(shí)現(xiàn)線程與定時器的方法,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • C語言實(shí)現(xiàn)簡單的文本編輯器

    C語言實(shí)現(xiàn)簡單的文本編輯器

    這篇文章主要為大家詳細(xì)介紹了C語言實(shí)現(xiàn)簡單的文本編輯器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-05-05
  • C++實(shí)現(xiàn)調(diào)用系統(tǒng)時間簡單示例

    C++實(shí)現(xiàn)調(diào)用系統(tǒng)時間簡單示例

    這篇文章主要介紹了C++實(shí)現(xiàn)調(diào)用系統(tǒng)時間,需要的朋友可以參考下
    2014-07-07
  • 如何正確的使用語句塊

    如何正確的使用語句塊

    本篇文章是對正確使用語句塊進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • C語言 指針的初始化賦值案例詳解

    C語言 指針的初始化賦值案例詳解

    這篇文章主要介紹了C語言 指針的初始化賦值案例詳解,本篇文章通過簡要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • C++單例類模板詳解

    C++單例類模板詳解

    這篇文章主要介紹了C++單例類模板,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03

最新評論

凤翔县| 邯郸市| 宣城市| 皋兰县| 湾仔区| 阜城县| 买车| 娄烦县| 常州市| 华坪县| 泸西县| 凤城市| 永善县| 库伦旗| 巨野县| 沁水县| 余庆县| 大渡口区| 新沂市| 岚皋县| 吉安县| 淮南市| 安乡县| 达州市| 迁西县| 界首市| 垦利县| 子洲县| 息烽县| 若羌县| 镇远县| 武山县| 遂宁市| 湖州市| 西丰县| 琼海市| 平舆县| 吉林省| 山丹县| 阳泉市| 会东县|