首先申明这部分关于Assert的用法来自《游戏编程精粹》一书,我只是一个搬运工,让在这里好好的与大家分享。当然也会有自己的一些心得。
asser宏的缺点就是无法告诉你太多的信息,如果你只是这样使用 assert(point!=NULL),那么你很有可能找不到出错的地方,有一个简单的小办法,可以帮助你嵌入更多的信息。
请看下面代码:
#include <assert.h>
#include <string.h>
int _tmain(int argc, _TCHAR* argv[])
{
char* name=("Nvidia_inside's Blog");
assert(strlen(name)<=5&&"His name is longer than five");
}
没错,就是运用 &&,添加调试信息的说明。
下面就是结果:
以前很多时候我想知道程序是否运行到一个地方给某个地方添加说明,我很笨很笨的用Mseesagebox,其实,可以用Assert的这个方法,来在任何地方显示任何想显示的字符串。
#include <assert.h>
#include <string.h>
int _tmain(int argc, _TCHAR* argv[])
{
assert(!"Nvidia_inside's Blog");
}
很简单吧,就是利用!取反字符串即可,给你更多的调试信息。