main()
{
int a;
for(a=1; a<=4 && printf("%d ",a); a++)
{
int a;
static int b=a;
printf("%d ",(a++)-b);
}
getchar();
getchar();
}
在該代碼時,打印輸出是1 0 2 1 3 2 4 3我明白爲什麼INT一個;部分的工作方式與在for函數之外定義的int a不同,爲什麼static int b;只是定義了一次,主值爲a;但爲什麼printf中的(a ++)部分會影響一個?難道我們不重新定義一個int;每次for函數運行?提前致謝。關於產品在功能變量定義
需要'家庭作業'標籤嗎? – 2010-04-01 20:08:57
@ all-editors:太多的時候編輯不好;) – 2010-04-01 20:13:04
這不是家庭作業。我爲全國比賽學習C謎題。 – 2010-04-01 20:13:42