考虑以下 C 程序
int a, b, c = 0;
void prtFun (void);
int main ()
{
static int a = 1; /* line 1 */
prtFun();
a += 1;
prtFun();
printf ( "\n %d %d " , a, b) ;
}
void prtFun (void)
{
static int a = 2; /* line 2 */
int b = 1;
a += ++b;
printf (" \n %d %d " , a, b);
}
给定的代码段将生成什么输出?
(一种)
3 1
4 1
4 2
(乙)
4 2
6 1
6 1
(C)
4 2
6 2
2 0
(四)
3 1
5 2
5 2
答案: (C)
说明:见 https://www.geeksforgeeks.org/c-language-set-9/
这个问题的测验