C++
fuyangchang
这个作者很懒,什么都没留下…
展开
-
gdb调试,显示utf-8字符
gdb本身只支持ASCII, ISO-8859-1,set charset可以查看。直接print utf8的中文字符会出现乱码, 看到网上有个解决方法是在调试程序中加入一个打印的函数,感觉比较好用,分享 一下。 将如下代码和main函数放在一起,调试的时候 call pstring(s)就行。 void pstring(string& s){ for (int i = 0; i (s[i]); if(h >> 4 == 0x0E) len = 3; //原创 2011-01-21 16:44:00 · 8255 阅读 · 0 评论 -
c++调试信息添加方式
在写代码的时候,总需要写进代码很多调试信息,方便的做法是用#if DEBUG#endif这样的预定义包围起来,如果需要打开调试信息,直接在头文件中添加#define DEBUG 1就可以了。常用的调试信息如下: struct timeval tv; gettimeofday(&tv, NULL); 。。。。。可执行程序。。。。。。 struct timeval tv2; gettimeofday(&tv2, NULL); cout原创 2011-04-27 17:46:00 · 1253 阅读 · 0 评论 -
设定全局的config配置文件
在开发项目的时候,有很多配置项,这个时候可以生成一个全局的conf类,需要读取配置文件的内容的时候,直接调用该类获取各种变量。 1.首先声明一个静态类的静态方法 static Config &GetInstance(); 2.在静态方法中生成一个静态的对象 Config &Config::GetInstance() { static Config instance; return instance; }3.在类中定义一个map,保存配置文件中的各个变量的值。这样原创 2011-05-04 15:29:00 · 1089 阅读 · 0 评论 -
c++类常见问题
c++类定义的时候,假如只是声明了,没有定义,用new生成对象时,会提示找不到symbol的错误。 *** glibc detected *** free(): invalid pointer: 0x0000000000517966 *** 已放弃 重现方法:country= new char[MAXBUF];if((index=strstr(country,"省"))!=NULL){ cout原创 2011-05-06 20:12:00 · 918 阅读 · 0 评论 -
cppcheck c++静态代码检查
一. cppcheck介绍 cppcheck 是一个静态代码检查工具,支持c, c++ 代码;作为编译器的一种补充检查,cppcheck对产品的源代码执行严格的逻辑检查。 执行的检查包括: 1. 自动变量检查 2. 数组的边界检查 3.转载 2011-08-28 17:43:27 · 4480 阅读 · 0 评论