下列程式碼的輸出結果為何? void increment() { static int num = 0; num++; printf("%d", num); } int main() { increment(); // 第一次呼叫 increment(); // 第二次呼叫 return 0; }
A0, 0
B1, 1
C1, 2正確答案
D0, 1
答案與詳解
第一次呼叫:num 初始化為 0,num++ 後為 1,印出 1;第二次呼叫:num 保留上次的 1,num++ 後為 2,印出 2。故輸出 1, 2。
