1樓:匿名使用者
二維陣列形式:
定義一個二維陣列如 char a[x][y]; 表示a陣列一共有x行,每一行有y列,此時如果這樣寫a[n],表示取這個陣列的第n行的首地址。例如 有如下定義:
char a[3][20] = ;
表示a[3][20]陣列一共是3行,每行佔用20列;並且a[0],表示指向"hello"的首地址a[1],指向"world"的首地址,a[2]指向"world"的首地址;
而puts()函式只要傳入給它一個首地址,它就可以輸出從字串開始的字串直到遇到結束符為止;因此這裡puts(a[1]);會輸出"world"
2樓:匿名使用者
二維陣列a[1]是一個指標
假如char a[2][5]=;
那麼a[1]就是指向字串「cpp」首地址的指標其中a[1][0]='c' a[1][1]='p' a[1][2]='p'
3樓:
是二維陣列第二行這個陣列的指標,其值是&a[1][0]——注意這裡只是「其值」。
4樓:噗噗人生
關於puts函式:
int puts(char *string);
其傳入的引數是char*型的,也就是字串。
我不知道你的二維陣列a[m][n]是什麼,不過如果是字串陣列的話,a[1]應該表示第二個字串(第一個是a[0]),所以puts(a[1])就是輸出字串啦。
字串陣列肯定是二維以上的,a[1]表示字串(其實這個值就是第二個字串的起始地址,型別就是char*),a[1][0]表示的是字元(char型)。
5樓:匿名使用者
puts : 原型:int puts(char *string); < puts入參指標型別> 向標準輸出裝置(螢幕)寫字串並換行,
a[1] : &(a[1][0]) ,表示a[1][0]的地址.
puts(a[1]) :取a[1][0]的地址傳給puts, 寫該地址儲存內容,直到\0結束.
計算機c語言中二維陣列a[1]和a[2]分別代表什麼
6樓:金色潛鳥
語句中 a[1] 表示 地址 &a[1][0], a[2] 表示 地址 &a[2][0].
即二維陣列a 的 第2行 元素 的 首地址 和 第3行 元素 的 首地址。
7樓:快先帶兒子走
陣列a的第二行和第三行
c語言二維陣列定義是什麼,然後int a[1][2]是代表什麼意思?怎麼用這個二維陣列
8樓:匿名使用者
c語言二維陣列定義的一般形式是:型別說明符 陣列名[常量表示式1][常量表示式2]
int a[1][2]的意思是,定義了一個int型別的,陣列名為a的,具有1行2列的陣列
你可以把這個二維陣列想像成一個**,這個**有1行2列,每個格子中可以放入一個int型資料。
陣列使用就是用陣列下標來訪問陣列中的元素,比如a[0][1]=5,就是把第1行的第2個元素賦值為5。
c語言,有二維陣列a[3][3]。 那&a[1][1]表示的是哪些元素呢?。。下午考試
9樓:匿名使用者
不是表示那些元素,而是得到a[1][1]元素的地址,&是一個去地址的運算。
那是因為你輸出的是一個字串,開始的位置是a[1][1],字串的結束標誌是'\0',也就是以位元組0結束,而在記憶體中的放置順序已後面下標為準,連續放置,所以a[1][1]後面緊跟著a[1][2]。
10樓:成為程式設計師
第二行第二個數的地址
c語言,二維陣列a[5][5],則*a[1]表示啥
11樓:匿名使用者
a[1]表示 a[1][0]的地址 即&a[1][0] 那麼*a[1]就是 a[1][0]的實際資料 *a[1]=*&a[1][0]
12樓:c__生活
*a[1]表示 二維陣列a第一組第零位元素的值即:a[1][0] 。
陣列可以簡單變
內換容有以下:
*a[1]==a[1][0]
a[1]==&a[1][0]
13樓:匿名使用者
表示陣列元素a[1][0]的值。
14樓:
表示第二行第一個元素的值。
15樓:xx同調士
指向a[1][0]的指標
為什麼c語言中二維陣列的陣列名a和*a表示的是同一個值?
16樓:匿名使用者
當定義二維陣列a[m][n]時,陣列名可以認為是二維指標,其指向二維陣列的首地址。
於是a的值就是首地址的值。
而*a,就是a[0],a[0]是第一行的標記,代表第一行的首地址。
在二維陣列中,所有元素都是緊密排列的,這樣整個陣列的首地址,第一行的首地址,和第一個元素的首地址,即a, a[0], &a[0][0] 都是相同的。
於是a和*a的值是相同的。
c語言二維陣列 定義一個二維陣列 a[2][2];scanf("%s",a[1]);是什麼意思?
17樓:匿名使用者
就是將字
bai符串 b拷貝到陣列a中,這是一個du複製函式zhi,在string 標頭檔案有定義,所以你可dao以回查閱它的使用方法
那個二維數答組就相當於 它的每個元素又是一維陣列,上例相當於 有2個一維陣列,每個陣列又含有兩個元素,所以a[1]就是第二個一維陣列的首地址,可以用來輸入字串
18樓:門恬淦瀾
這個是一個二維陣列,最外面的括號就是總的資料裡面的每個括號都是下標中
回1的內容答,舉個例子
你上面的
哪樣的話
那就是a[0][0]=1;
a[0][1]=2;
a[0][2]
沒賦值a[1][0]=4
;a[1][1]=
5;其他的都沒賦值
c語言中一個二維陣列 它的陣列名是a 那a和*a有什麼區別?
19樓:匿名使用者
對於二維陣列名a和*a,二者的區別在於型別不同。
對於type a[m][n];
當使用a時,可以等同於二級指標type **型。
而使用*a時,等同於type*型。
從概念上說,a表示二維陣列a的首地址,而*a表示二維陣列a第一行a[0]的首地址。這樣在使用的時候就有所區別。比如 對a的操作a[4]表示a的第四行首地址,而對*a的操作(*a)[4]則代表第一行的第4個元素,即a[0][4]。
所以a和*a除了值相同外,其它的各方面都是不同的。
20樓:匿名使用者
資料名可以看作指標常量,分配陣列空間時指標值就確定下來了,不像宣告的指標變數那樣,值是不能改變的。*a=a[0],對於二維陣列a[0]也是一個指標,他們都指向陣列的首地址,值都相等,但是,a和a[0]雖然值相等,但對他們進行指標運算時,地址偏移的基礎不同。
21樓:匿名使用者
其實不大 *a就是a[0]都是第一行的地址
22樓:匿名使用者
有無指標指向的區別。
23樓:匿名使用者
a是這個二維資料首地址,*a是第一個元素值。
c語言 二維陣列 (*(a+1)[1]) 和 *(a+5)分別表達什麼?
24樓:匿名使用者
*(a+1)=a[1]
那麼*(a+1)[1] = a[1][1]
*(a+5) = a[5]
關於c語言二維陣列輸出問題,C語言程式設計二維陣列輸出一個23的矩陣
二維bai陣列是由一維陣列構成的,迴圈第du一維輸出zhi就可以了 include stdio.h int main int argc,char argv int i for i 0 i 7 puts s i return 0 執行結果 版空的那一行就是那個權空字串的輸出結果。c語言程式設計 二維陣...
c語言中二維陣列aij為什麼c語言中二維陣列aij為什麼aa
在c語言中,二者是相同的地址值。所以可以說a a.二維陣列a定義為a i j 時,代表一組資料,有i行j列,共計i j的元素。這組資料在記憶體中是連續存放的。而在c語言的使用中,a是二維陣列的首地址。a也就是a 0 是二維陣列第一行的首地址。所以,二者是相同的地址值,即資料a 0 0 的地址值。也就...
C語言中關於二維陣列的問題,c語言關於定義二維陣列的問題
float a 5 是定義了一個指向陣列的指標,如果要把它當成二維陣列的話,相當於列數為5,行數可以動態分配。如 float a 5 int n 2 定義行數為2 a new float n 5 int sum 0 for int i 0 i 對於你定義的這個陣列,它表示有5個float 型別的指標...