我正在閱讀由Kochan編程的C編程,第3版。在c數組中編程
在介紹陣列(程序7.1),他舉了一個例子:
#include <stdio.h>
int main(void)
{
int values[10];
int index;
values[0] = 197;
values[2] = -100;
values[5] = 350;
values[3] = values[0] + values[5];
values[9] =
values[5]/10;
--values[2];
for (index = 0; index < 10; ++index)
printf ("values[%i] = %i\n", index, values[index]);
return 0;
}
應該給輸出
values[0] = 197
values[1] = 0
values[2] = -101
values[3] = 547
values[4] = 0
values[5] = 350
values[6] = 0
values[7] = 0
values[8] = 0
values[9] = 35
而且我quadriple檢查,我使用完全相同的代碼它只能工作一半,給我一些奇怪的額外數字a [1],[4]
values[0] = 197
values[1] =052
values[2] = -101
values[3] = 547
values[4] = 17704192
values[5] = 350
values[6] = 0
values[7] = 0
values[8] = 0
values[9] = 35
我是usin g cl arrays.c -o arrays
進行編譯。
如果這是書中的確切代碼,我會建議找一本不同的書。 – crashmstr
我試圖找到一個答案,發現[鏈接]後發現相關主題的迴應(https://stackoverflow.com/questions/17709392/odd-output-by-an-array?rq=1)我會嘗試閱讀更多內容,如果有人得到答案,它會非常有幫助。 – user3101661
我有一種感覺,值[10]是本書中的一個全局變量。如果不是,我同意黑客和crashmstr。 – user3386109