这两天一直在调一个工程程序,遇到了一个很诡异的问题:
在debug模式下,在被调用的函数中的参数正确,但按F11进入函数体内,却发现被传进来的参数有几个是正确,但有一个却是不正确的。
本来以为是堆栈被冲了,但重新建了一个工程,对初始变量进行了赋值和分配内存,进行测试,却发现不是那个问题;又以为是数据格式的问题,测试后也不对。
百思不得其解。偶然的机会,进入release模式下,居然可以运行,在网上查看了,debug模式和release模式的区别,发现主要是参数配置的问题。再一一对照两种模式,发现原来是*d.lib的原因,而我以前在debug模式下用的*.lib,故不对。
郁闷,无语。。。