C語言二維數(shù)組幾種常用的表示方法
更新時間:2019年03月05日 15:17:55 作者:BLSxiaopanlaile
今天小編就為大家分享一篇關(guān)于C語言二維數(shù)組幾種常用的表示方法,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
名稱:二維數(shù)組的幾種表示方法
說明:常用的有以下幾種二維數(shù)組的表示方法:
- (1)、第一種是普通的二維數(shù)組的表示方法。
- (2)、第二種是用一維數(shù)組來表示二維數(shù)組,從顯示的元素地址可以看出,二維數(shù)組和一維數(shù)組表示的二維數(shù)組在內(nèi)存中的儲存方式其實(shí)是一樣的,不過使用二維數(shù)組看起來要簡單些,只要不用進(jìn)行地址轉(zhuǎn)換。
- (3)、第三種表示是用指針數(shù)組。本例中的c[i]中的元素其實(shí)是地址。這種方法對各個元素大小不一樣的情況下比較適用。如:假定有若干個不等長字符串需要我們處理,如果使用a [i ][j]結(jié)構(gòu),則j必須取這些字符串長度的最大值, 顯然這種方法浪費(fèi)空間。如果采用* a [i ]結(jié)構(gòu),則由于a中僅保存每個字符串的首地址,而不是串本身,這不僅節(jié)約了空間,而且減少了直接對串進(jìn)行操作的時間。
- (4)、第四種方式為用指向指針的變量來表示。此種方式p是指向指針的指針,不能把普通的二維數(shù)組的首地址(如本例中的a)賦給它。(因?yà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]<<")"<<" "; //括號里是對應(yīng)元素的地址
//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)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接
您可能感興趣的文章:
相關(guān)文章
Windows10配置VSCode C++環(huán)境(超詳細(xì),面向小白以及大佬們)
這篇文章主要介紹了Windows10配置VSCode C++環(huán)境(超詳細(xì),面向小白以及大佬們),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
2019-12-12
深入理解C++中public、protected及private用法
這篇文章主要介紹了C++中public、protected及private用法,對于C++面向?qū)ο蟪绦蛟O(shè)計(jì)來說是非常重要的概念,需要的朋友可以參考下
2014-08-08
C++ HLSL實(shí)現(xiàn)簡單的圖像處理功能
本文主要介紹了HLSL實(shí)現(xiàn)簡單的圖像處理功能的方法,具有很好的參考價值,下面跟著小編一起來看下吧
2017-02-02 
