1樓:墨汁諾
c語言中規定,陣列名就代表了該陣列的首位址。
整個陣列是以首位址開頭的一塊連續的記憶體單元。如有字元陣列char c[10]。設陣列c的首位址為2000,也就是說c[0]單元位址為2000。則陣列名c就代表這個首位址。
因此在c前面不能再加位址運算子&。如寫作scanf("%s",&c);則是錯誤的。在執行函式printf("%s",c) 時,按陣列名c找到首位址,然後逐個輸出陣列中各個字元直到遇到字串終止標誌'\0'為止。
產生**
在c語言中, 陣列屬於構造資料型別。乙個陣列可以分解為多個陣列元素,這些陣列元素可以是基本資料型別或是構造型別。因此按陣列元素的型別不同,陣列又可分為數值陣列、字元陣列、指標陣列、結構陣列等各種類別。
關於可變長陣列(vla)的問題:原來的c89標準中是不允許可變長陣列出現的,但是在c99標準中,加入了對vla的支援,但是支援的編譯器不多,而且由於棧溢位的安全問題,沒有太多的人敢用這個可變長陣列,所以在c11標準中又把它規定為可選實現的功能了。
2樓:匿名使用者
陣列名字 .
3樓:
幹嘛要代替它的首位址? 沒明白你的意思
或者你要實現什麼?
c語言中,陣列在記憶體中佔一片()的儲存區,由()代表它的首位址
4樓:匿名使用者
陣列在記憶體中佔一片(連續)的儲存區,由(首元素的位址)代表它的首位址
陣列名是乙個(指標)常量,不能對它進行賦值運算
5樓:
陣列名是乙個指標常量,不能給其賦值,就像1,2,3這樣的整數一樣值已給定!
c語言中陣列在記憶體中占用一段連續的儲存空間,它的首位址由什麼表示 **等
6樓:夜遊神小翠
陣列的首位址就是陣列名,比如有陣列a[10],則a就是該陣列的首位址。
7樓:求水古龍
舉個列子形象點 比如定義乙個陣列a[10] 那麼他的首位址就是a[0]的位址
不知道閣下學過指標沒有 其實就是個指標啊
陣列在記憶體中佔一段連續的儲存區由什麼代表它的首位址
8樓:淡
陣列名或者所佔記憶體的第乙個記憶體位址
9樓:匿名使用者
int a;
陣列首位址為 &a.
c語言問題
10樓:匿名使用者
1.當然是9了。因為a[0]~a[9],最大也就到9了2.
陣列名字。int a[10].那麼a就是首位址了3.
因為*p,所以p是指標,p=a,意思是p的位址等於a的位址,也就是二維陣列的首位址,又因為(*p)[2]; 所以其實p是陣列指標,(*p)[0]指向第一行,
(*p)[1]指向第二行。
這裡*(p+2)之後,指向了第一行的第三個數,就是30,又因為後面還有乙個+1,就是指向第二行了,很明顯30對應的第二行就是60.
10 20 30
40 50 60
11樓:匿名使用者
1、92、陣列名
3、60
12樓:匿名使用者
1、最大的下標為9。
2、a代表它的首位址。
3、值為60。
13樓:黃邦勇帥哥哥
第1題:9
第2題:陣列名
14樓:夏日銀杏樹下
1. 9
2. 陣列名 a
3. 60
15樓:匿名使用者
1。 若有以下陣列a,元素a[0]~a[9]其值分別為9 4 12 8 2 10 7 5 1 3,該陣列可用最大下標值為(9)
2. 陣列在記憶體中佔一段儲存區,由(a)代表他的首位址3. 設有以下定義語句:
int a[3][2]=,(*p)[2]; p=a;則*(*(p+2)+1)值為(60)
16樓:匿名使用者
1. 9
2. a
3. 60
C語言中整型陣列的每個元素在記憶體中是如何存放的
整型陣列每個元素在記憶體中連續儲存,每個整型元素儲存方式取決於機器硬體。一 陣列元素都是連續儲存的,位址依次從低到高。如字元陣列 char a 10 其元素有10個,為a 0 到a 9 位址連續。如果a的起始位址為0x1234,那麼後續位址依次為0x1235,0x1235.0x123d。二 每個元素...
C語言中怎麼把一維陣列賦給另外一維陣列
勵光解芷容 不可以,之所以不可以是因為陣列名是個常量,它的值是陣列首元素地址,即不能將其它值付給這個常量。可以採用迴圈的方法逐個複製,或者採用另一個同型別的指標 相對於陣列名,指標是變數 指向要複製的陣列,之後就可以採用這個指標訪問之前的那個陣列 武冰業雁菡 void main int b 10 i...
C語言中怎樣用指標找出一維陣列中的最大值和最小值並輸出它們的
1 新建一個工程和.c檔案,並且輸入主函式和標頭檔案。2 定義全域性變數。3 定義變數型別。4 用兩個for語句給陣列元素賦值。5 呼叫求最小值的函式。6 函式的總體流程如下圖。7 在主函式中輸出結果,編譯 執行,得到最後結果。 問明 include int main int a 10 n,max,...