程序输出是9和19,两次调用func()结果不同的原因是因为func()里面的变量M和n是局部静态变量,静态变量,也就是说你第一次调用func()时改变了M和n的值,静态变量会把这个值保留到下一次调用这个函数时保留m和n原来的值,具体情况请百度c/c++static静态变量,根本原因还是你没有认真看书
9 19吧,因为func函数里面的m,n是静态变量
9 9。因为k,m是局部变量,不会在main外改变值