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

C語言二維數(shù)組幾種常用的表示方法

 更新時間:2019年03月05日 15:17:55   作者:BLSxiaopanlaile  
今天小編就為大家分享一篇關于C語言二維數(shù)組幾種常用的表示方法,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧

名稱:二維數(shù)組的幾種表示方法

說明:常用的有以下幾種二維數(shù)組的表示方法:

  • (1)、第一種是普通的二維數(shù)組的表示方法。
  • (2)、第二種是用一維數(shù)組來表示二維數(shù)組,從顯示的元素地址可以看出,二維數(shù)組和一維數(shù)組表示的二維數(shù)組在內(nèi)存中的儲存方式其實是一樣的,不過使用二維數(shù)組看起來要簡單些,只要不用進行地址轉(zhuǎn)換。
  • (3)、第三種表示是用指針數(shù)組。本例中的c[i]中的元素其實是地址。這種方法對各個元素大小不一樣的情況下比較適用。如:假定有若干個不等長字符串需要我們處理,如果使用a [i ][j]結(jié)構(gòu),則j必須取這些字符串長度的最大值, 顯然這種方法浪費空間。如果采用* a [i ]結(jié)構(gòu),則由于a中僅保存每個字符串的首地址,而不是串本身,這不僅節(jié)約了空間,而且減少了直接對串進行操作的時間。
  • (4)、第四種方式為用指向指針的變量來表示。此種方式p是指向指針的指針,不能把普通的二維數(shù)組的首地址(如本例中的a)賦給它。(因為a不是指向指針的指針)??梢园训谌N方式中的數(shù)組指針的首地址賦給它。這種方式用的較少。
#include<iostream>
using namespace std;
int main()
{
  int a[3][3] = {{0,1,2},{3,4,5},{6,7,8}};
  int b[9] = {0,1,2,3,4,5,6,7,8};
  int *c[3];
  int **p;
  cout<<"普通二維數(shù)組表示"<<endl;
  for(int i = 0;i<3;++i)
  {
    for(int j = 0;j<3;++j)
     {
      cout<<a[i][j]<<"("<<&a[i][j]<<")"<<" ";  //括號里是對應元素的地址
      //cout<<*(*(a+i)+j)<<" ";
    }
    cout<<endl;
  }
  cout<<"普通一維數(shù)組表示"<<endl;
  for(int i = 0;i<3;++i)
  {
    for(int j = 0;j<3;++j)
    {
      cout<<b[i*3+j]<<"("<<&b[i*3+j]<<")"<<" ";
    }
    cout<<endl;
  }
  cout<<"指針數(shù)組表示:"<<endl;
  for(int i = 0;i<3;++i)
  {
    c[i] = *(a+i);   //c[i]指向a數(shù)組的第i行首地址
    for(int j = 0;j<3;++j)
    {
      cout<<c[i][j]<<"("<<&c[i][j]<<")"<<" ";
    }
    cout<<endl;
  }
  cout<<"指針變量表示"<<endl;
  p = c;   //p為指向指針的指針,將指針數(shù)組c賦給指針變量p
  for(int i = 0;i<3;++i)
  {
    for(int j = 0;j<3;++j)
    {
      cout<<p[i][j]<<"("<<&p[i][j]<<")"<<" ";
    }
    cout<<endl;
  }
 return 0;
}

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。如果你想了解更多相關內(nèi)容請查看下面相關鏈接

相關文章

  • 深入理解C++中變量的存儲類別和屬性

    深入理解C++中變量的存儲類別和屬性

    這篇文章主要介紹了C++中變量的存儲類別和屬性,是C++入門學習中的基礎知識,需要的朋友可以參考下
    2015-09-09
  • C++中命名空間的概念及使用詳解

    C++中命名空間的概念及使用詳解

    這篇文章主要介紹了C++中命名空間的概念及使用詳解,使用命名空間的目的是對標識符的名稱進行本地化,以避免命名沖突或名字污染,namespace關鍵字就是針對這種問題而出現(xiàn)的,需要的朋友可以參考下
    2023-08-08
  • 使用C語言實現(xiàn)vector動態(tài)數(shù)組的實例分享

    使用C語言實現(xiàn)vector動態(tài)數(shù)組的實例分享

    vector是指能夠存放任意類型的動態(tài)數(shù)組,而C語言中并沒有面向?qū)ο蟮腃++那樣內(nèi)置vector類,所以我們接下來就來看一下使用C語言實現(xiàn)vector動態(tài)數(shù)組的實例,需要的朋友可以參考下
    2016-05-05
  • C++ boost scoped_ptr智能指針詳解

    C++ boost scoped_ptr智能指針詳解

    智能指針是一種像指針的C++對象,但它能夠在對象不使用的時候自己銷毀掉。雖然STL提供了auto_ptr,但是由于不能同容器一起使用(不支持拷貝和賦值操作),因此很少有人使用。它是Boost各組件中,應用最為廣泛的一個
    2022-11-11
  • 詳解C語言中的Static關鍵字

    詳解C語言中的Static關鍵字

    這篇文章主要為大家介紹了C語言中Static關鍵字,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-01-01
  • C語言堆排序經(jīng)典算法TopK問題解析

    C語言堆排序經(jīng)典算法TopK問題解析

    這篇文章主要為大家介紹了C語言堆排序經(jīng)典算法TopK問題解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-04-04
  • C語言命令行參數(shù)的使用詳解

    C語言命令行參數(shù)的使用詳解

    本文主要介紹了C語言命令行參數(shù)的使用詳解,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • C++中的運算符重載詳解

    C++中的運算符重載詳解

    大家好,本篇文章主要講的是C++中的運算符重載詳解,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下
    2022-01-01
  • C++中opencv4.1.0環(huán)境配置的詳細過程

    C++中opencv4.1.0環(huán)境配置的詳細過程

    這篇文章主要介紹了C++中opencv4.1.0環(huán)境配置的詳細過程,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-10-10
  • C++中聲明類的class與聲明結(jié)構(gòu)體的struct關鍵字詳解

    C++中聲明類的class與聲明結(jié)構(gòu)體的struct關鍵字詳解

    這篇文章主要介紹了C++中聲明類的class與聲明結(jié)構(gòu)體的struct關鍵字,默認情況下結(jié)構(gòu)的所有成員均是公有的,而類的所有成員是私有的,需要的朋友可以參考下
    2016-01-01

最新評論

冕宁县| 高阳县| 大庆市| 水城县| 三穗县| 鞍山市| 阳高县| 浮梁县| 安泽县| 海晏县| 岫岩| 乌兰浩特市| 泸水县| 津南区| 溧水县| 合水县| 治多县| 绥阳县| 青州市| 五原县| 祁连县| 龙井市| 崇文区| 彭阳县| 永川市| 安庆市| 关岭| 清新县| 巢湖市| 台湾省| 洮南市| 峡江县| 洛宁县| 大石桥市| 和硕县| 泸水县| 堆龙德庆县| 平顶山市| 郓城县| 仙游县| 安徽省|