-2
て配列に要素を追加すると、誰かが私に説明できます:このコードが動作する理由関数呼び出し
#include <stdio.h>
void set_array(int array[3]);
int main()
{
int a[3] = {1, 2, 3};
set_array(a);
for (int i = 0; i < 4; i++)
{
printf("%d\n", a[i]);
}
}
void set_array(int array[3])
{
array[3] = 4;
}
それは私が関数呼び出しによって配列に要素を追加することが可能であるどのように?誰かがここにカーテンの後ろに起こっていることを私に説明することはできますか?
ありがとうございます。
これは未定義の動作です。 – owacoder
何が起こると思いますか?どうして? – Olaf
これはちょうどうまくコンパイルされ、実際には要素を 'a'配列に追加することがわかりました。あなた自身のためにそれを試してください。 –