结果是1 11
追答没错,难道和我说的不一致吗?
追问能给个过程吗?
追答我上面的解释就是过程。调用三次incretment就输出三个1。
追问能帮忙看一下吗?明天早上要用,可是我写的有兼容性问题!所以没办法了
答案应该是:
1 1 1
在这个程序中,increment函数被调用了三次。而每次调用该函数时只是 把变量 x 的值加一。对于初学者需要注意的是,变量 x 是一个局部变量,其作用域只在 increment函数内部。在主函数main中不管调用多少次increment函数,也只不过重复调用而已,所以其中 x 的值都是一样的。运行结果如图所示:
追问答案为什么是1 11是不是错了?
追答输出三个1是没有错的。因为x只是一个局部变量,并且不是静态变量。如果x是以static声明的静态变量,那么x的值在每次函数调用时都会被保存下来,这种情况如下图所示:
非常感谢
过两天就期末考了!所以备考中
能帮忙看一下吗?明天早上要用,可是我写的有兼容性问题!所以没办法了