摘要: “该死系统存在内存泄漏问题”,项目中由于各方面因素,总是有人抱怨存在内存泄漏,系统长时间运行之后,可用内存越来越少,甚至导致了某些服务失败。内存泄漏是最难发现的常见错误之一,因为除非用完内存或调用malloc失败,否则都不会导致任何问题。实际上,使用C/C++这类没有垃圾回收机制的语言时,你很多时间 阅读全文
posted @ 2017-04-14 17:57 阿玛尼迪迪 阅读(3977) 评论(0) 推荐(0) 编辑
摘要: assert assert是一个预处理宏,由预处理器管理而非编译器管理,所以使用时都不用命名空间声明,如果你写成std::assert反而是错的。使用assert需要包含cassert或assert.h,用法如下: assert主要用途是:用于调试,检测一些不应该出现的情况。如果expr为假(即为0 阅读全文
posted @ 2017-04-14 16:21 阿玛尼迪迪 阅读(385) 评论(0) 推荐(0) 编辑
摘要: 由于我看到的文章也是转载且未提供原文链接,所以这里没有提供原文链接! msvcrt.dll(名称:Microsoft C Runtime Library)提供了printf,malloc,strcpy等C语言库函数,并且为使用C/C++(VC)编译的程序提供了初始化(如获取命令行参数)以及退出等功能 阅读全文
posted @ 2017-04-14 15:46 阿玛尼迪迪 阅读(616) 评论(0) 推荐(0) 编辑
摘要: 我们在C++的开发中经常会碰到string、char*以及CString,这三种都表示字符串类型,有很多相似又不同的地方,常常让人混淆。下面详细介绍这三者的区别、联系和转换: 各自的区别 char*: char*是一个指向字符的指针,是一个内置类型。可以指向一个字符,也可以表示字符数组的首地址(首字 阅读全文
posted @ 2017-04-14 14:59 阿玛尼迪迪 阅读(548) 评论(0) 推荐(0) 编辑
摘要: 多字节字符与宽字节字符 1) char与wchar_t 我们知道C++基本数据类型中表示字符的有两种:char、wchar_t。 char叫多字节字符,一个char占一个字节,之所以叫多字节字符是因为它表示一个字时可能是一个字节也可能是多个字节。一个英文字符(如’s’)用一个char(一个字节)表示 阅读全文
posted @ 2017-04-14 11:21 阿玛尼迪迪 阅读(1953) 评论(1) 推荐(0) 编辑