有个程序调试很久一直数据异常,后来无意发现main函数内定义的变量定义在main以外后程序功能正常了。我分析原因可能是:main函数内定义的变量属于函数局部变量,局部变量保存在栈中,main中有后续程序意外改变了栈里的值,导致这个定义在main内的变量值发生了意外改变