我想知道 [i] 是做什么用的,如果我不放,為什么我的表格不顯示,謝謝!
![如果我不放,為什么我的表格不顯示[i]](https://i.stack.imgur.com/yZfVK.png)
#include <stdio.h>
void affiche(int* tableau, int taille);
int main()
{
int tableau[5] = { 12,15,50,20 };
affiche(tableau, 4);
return 0;
}
void affiche(int *tableau,int taille)
{
int i;
for (i = 0; i < taille; i )`
{
printf("%d\n", tableau[i]);
}
}
uj5u.com熱心網友回復:
[i]是陣串列示法的 C 語言語法。
tableau是一個由 5 個整陣列成的陣列。
int tableau[5] = {12,15,50,20}
由于上述宣告,記憶體中的 tableau 分配了 5 個插槽。
插槽 0 到 3 是您的初始化值。插槽 4 未初始化(盡管現代 c 編譯器可能將此值設定為 null 或零 (0)。
tableau
-----------------------
index | 0 | 1 | 2 | 3 | 4 |
-----------------------
value | 12 | 15 | 50 | 20 | ? |
-----------------------
在函式內部affiche(...)這個陳述句
printf("%d\n", tableau)
嘗試列印到控制臺一個整數 (%d) 后跟一個換行符 (\n)
但是tableau是一個由 5 個整陣列成的陣列。
所以你需要陣列索引來單獨選擇一個特定的整數,如下所示:
printf("%d\n", tableau[0]) // output: 12
printf("%d\n", tableau[1]) // output: 15
printf("%d\n", tableau[2]) // output: 50
printf("%d\n", tableau[3]) // output: 20
printf("%d\n", tableau[4]) // output: unknown, possible exception
affiche(tableau, 4);或通過在索引 3 處結束的函式呼叫
void affiche( int *tableau, int taille)
{
int i;
for( i = 0; i < taille; i ){
printf( "%d\n", tableau[i] );
}
}
哪個輸出:
12
15
50
20
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/520675.html
標籤:C视窗视觉工作室
