c語(yǔ)言函數(shù)中二維數(shù)組聲明,c++二維數(shù)組聲明

c語(yǔ)言如何定義二維數(shù)組

二維數(shù)組定義的一般形式是:

網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)!專(zhuān)注于網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、成都小程序開(kāi)發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了番禺免費(fèi)建站歡迎大家使用!

dataType arrayName[length1][length2];

其中,dataType 為數(shù)據(jù)類(lèi)型,arrayName 為數(shù)組名,length1 為第一維下標(biāo)的長(zhǎng)度,length2 為第二維下標(biāo)的長(zhǎng)度。

例如:

int a[3][4];

定義了一個(gè) 3 行 4 列的二維數(shù)組,共有 3×4=12 個(gè)元素,數(shù)組名為 a,即:

a[0][0], a[0][1], a[0][2], a[0][3]

a[1][0], a[1][1], a[1][2], a[1][3]

a[2][0], a[2][1], a[2][2], a[2][3]

如何用C語(yǔ)言malloc聲明一個(gè)二維數(shù)組,比如我想聲明一個(gè) int a(5)(8)

malloc聲明一個(gè)二維數(shù)組, 假定行數(shù) NR=5, 列數(shù)NC=8:

int NR=5,NC=8;

int i,j;

int **a;

// scanf("%d %d", NR, NC); 你也可以在這里輸入行數(shù),列數(shù),然后

// 動(dòng)態(tài)分配:

a = (int **) malloc(sizeof(int *) * NR);

for (j=0;jNR;j++){

a[j] = (int *) malloc(sizeof(int) * NC);

}

// 假定這里賦初值:

for (j=0;jNR;j++) for (i=0;iNC;i++) {

a[j][i] = (j+1)*100 + i;

}

//輸出數(shù)組元素值:

for (j=0;jNR;j++){

for (i=0;iNC;i++) printf("%3d ",a[j][i]);

printf("\n");

}

//釋放內(nèi)存的方法:

for (j=0;jNR;j++) free(a[j]);

free(a);

C語(yǔ)言 定義二維數(shù)組

首先你得知道C語(yǔ)言中其實(shí)都是一維數(shù)組好了,然后你得知道不給明確元素的值時(shí)[ ] 里面必須是常量,如 int[2] ,否則你就得把它中得元素寫(xiě)出來(lái),如int[]={1,2} .好了,那么二維數(shù)組實(shí)際也是一維數(shù)組,a[2][2]中第一個(gè)a[2]表示我是一個(gè)數(shù)組,有兩個(gè)元素,然后這兩個(gè)元素也是數(shù)組類(lèi)型的。這個(gè)題目太簡(jiǎn)單,A,C可以扔了,B理解了上述也可以扔,答案就是D了,其實(shí)a[][]={(1,2),(3,4)也是對(duì)的。。

c語(yǔ)言中二維數(shù)組的定義

二維數(shù)組定義的一般形式是:

類(lèi)型說(shuō)明符 數(shù)組名[常量表達(dá)式1][常量表達(dá)式2]

其中常量表達(dá)式1表示第一維下標(biāo)的長(zhǎng)度,常量表達(dá)式2 表示第二維下標(biāo)的長(zhǎng)度

int a[3][4];

C語(yǔ)言中如何將二維數(shù)組作為函數(shù)的參數(shù)傳遞

在C語(yǔ)言中可以用二維數(shù)組作為實(shí)參或者形參。

1、函數(shù)中用二維數(shù)組作為形參,函數(shù)聲明中可以指定所有維數(shù)的大小,也可以省略第1維的維數(shù)如:

void?f(int?array[3][10]);?//正確

void?f(int?array[][10]);??//正確

上面的兩種二維數(shù)組形參表示都是正確的。

2、函數(shù)中用二維數(shù)組作為形參,不能把第2維或者更高維的大小省略,如下面的定義是不合法的:

void?f(int?array[][]);?//錯(cuò)誤

因?yàn)閺膶?shí)參傳遞來(lái)的是數(shù)組的起始地址,在內(nèi)存中按數(shù)組排列規(guī)則存放(按行存放),而并不區(qū)分行和列,如果在形參中不說(shuō)明列數(shù),則系統(tǒng)無(wú)法決定應(yīng)為多少行多少列,不能只指定一維而不指定第二維,下面寫(xiě)法是錯(cuò)誤的:

void?f(int?array[3][]);??//錯(cuò)誤

3、二維數(shù)組作為實(shí)參傳遞時(shí),必須保證實(shí)參第2維的維數(shù)與形參第2維的維數(shù)相同,因?yàn)楸仨氁WC形參和實(shí)參的數(shù)據(jù)類(lèi)型一致。比如定義如下函數(shù):

void?f(int?array[][10]);

可以將如下數(shù)組傳遞給函數(shù)f。

int?a[2][10]?=?{1,2,3,4};?

int?b[4][10]?=?{1};

C語(yǔ)言二維數(shù)組定義是什么,然后int a[1][2]是代表什么意思?怎么用這個(gè)二維數(shù)組

C語(yǔ)言二維數(shù)組定義的一般形式是:類(lèi)型說(shuō)明符 數(shù)組名[常量表達(dá)式1][常量表達(dá)式2]

int a[1][2]的意思是,定義了一個(gè)int類(lèi)型的,數(shù)組名為a的,具有1行2列的數(shù)組

你可以把這個(gè)二維數(shù)組想像成一個(gè)表格,這個(gè)表格有1行2列,每個(gè)格子中可以放入一個(gè)int型數(shù)據(jù)。

數(shù)組使用就是用數(shù)組下標(biāo)來(lái)訪問(wèn)數(shù)組中的元素,比如a[0][1]=5,就是把第1行的第2個(gè)元素賦值為5。

網(wǎng)頁(yè)題目:c語(yǔ)言函數(shù)中二維數(shù)組聲明,c++二維數(shù)組聲明
網(wǎng)址分享:http://www.muchs.cn/article20/hssico.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、定制網(wǎng)站建站公司、關(guān)鍵詞優(yōu)化、面包屑導(dǎo)航、品牌網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司