c/c++
文章平均质量分 88
wanglx2012
这个作者很懒,什么都没留下…
展开
-
几个C语言中的易混淆点
1.数据类型的字节数int类型通常代表特定机器的自然长度,可以是16位或32位;short类型通常是16位;long类型通常是32位类型的位数一般只对编译器可见,位数是多少可用sizeof来看,各编译器可根据硬件的特性自主的选择类型位数,但必须遵循特定的规则:short型和int型至少为16位,long型至少为32位,而且short不得超过int型,int型不得超过long型。有一点是编译原创 2012-01-03 17:34:30 · 863 阅读 · 0 评论 -
windows mini dump file
头文件#ifndef _H_WIN_DUMP_H_#define _H_WIN_DUMP_H_#include #include #pragma comment( lib, "DbgHelp" )////////////////////////////////////////////////////////////////////////////DO NOT CARE THINGS原创 2016-08-19 13:31:06 · 908 阅读 · 0 评论 -
release版调用ffmpeg出错
这几天在做一个原始ES流复用为MP4的库,调用的是ffmpeg,弄了半天把各种参数设好之后,F5一切正常,ok了,可让人郁闷的是,把库编译成release版本后,不是报未处理异常,就是报无法定位程序入口点……,刚开始以为是release版本的编译选项没设置好,找了半天也没有找到,最后在网上一通搜索,找到下面这篇文章:http://blog.csdn.net/bing87496988/artic原创 2015-11-26 13:13:03 · 1743 阅读 · 0 评论 -
关于不同的程序入口,main(), _tmain(),WinMain(),wmain()?
转自http://blog.sina.com.cn/s/blog_842bf5cd010177f8.htmlhttp://topic.csdn.net/t/20010930/15/308713.html答:main()是WINDOWS的控制台程序(32BIT)入口或DOS程序(16BIT)入口,WinMain()是WINDOWS的GUI程序入口,wmain()是UNICOD转载 2015-11-15 09:23:47 · 3303 阅读 · 1 评论 -
Windows及Linux平台下的计时函数总结
本文对Windows及Linux平台下常用的计时函数进行总结,包括精度为秒、毫秒、微秒三种精度的各种函数。比如Window平台下特有的Windows API函数GetTickCount()、timeGetTime()、及QueryPerformanceCounter(),Linux平台下特有的gettimeofday()函数,以及标准的C/C++函数time()和clock()。下面分别对转载 2015-07-31 15:05:10 · 1148 阅读 · 0 评论 -
字符串哈希函数
基本概念所谓完美哈希函数,就是指没有冲突的哈希函数,即对任意的 key1 != key2 有h(key1) != h(key2)。设定义域为X,值域为Y, n=|X|,m=|Y|,那么肯定有m>=n,如果对于不同的key1,key2属于X,有h(key1)!=h(key2),那么称h为完美哈希函数,当m=n时,h称为最小完美哈希函数(这个时候就是一一映射了)。在处理大规模字符串数据时,转载 2014-10-20 14:37:51 · 6391 阅读 · 0 评论 -
哈希表之bkdrhash算法解析及扩展
BKDRHASH是一种字符哈希算法,像BKDRHash,APHash,DJBHash,JSHash,RSHash,SDBMHash,PJWHash,ELFHash等等,这些都是比较经典的,通过http://blog.csdn.net/wanglx_/article/details/40300363(字符串哈希函数)这篇文章,我们可知道,BKDRHash是比较好的一个获取哈...原创 2014-10-24 14:31:13 · 30631 阅读 · 9 评论 -
二叉排序树(C与Python分别实现)
1. 什么是二叉排序树?二叉排序树是一种特殊的二叉树,可以是一棵空树,也可以是具有下列性质的二叉树:1. 若左子树不为空,那么左子树所有结点的值都小于它的根结点的值。2. 若右子树不为空,那么右子树所有结点的值都大于它的根节点的值。3. 它的左右子树也分别是二叉排序树。二叉排序树又称二叉查找树,是一种动态查找表,所谓动态查找表是指除了查询原创 2014-11-01 11:32:49 · 2850 阅读 · 0 评论 -
哈弗曼编码及译码
路径长度:从树的一个结点到另一个结点之间边的条数。树的路径长度:从树根到每个叶子结点之间路径长度之和。带权树的路径长度:每个叶子结点带有权值,树根到叶子结点的路径长度乘以该叶子结点的权值之和。哈弗曼树:带权树的路径长度最小的树,又称作最小二叉树和最优二叉树。哈夫曼树的构造过程:原创 2014-10-30 11:25:17 · 1767 阅读 · 0 评论 -
平衡二叉树
什么是平衡二叉树?平衡二叉树是一种特殊的二叉排序树,又称AVL树,它可以是一棵空树,或者是具有下列性质的二叉排序树:左子树与右子树的深度之差的绝对值不超过1,且它的左右子树都是平衡二叉树。二叉树上结点的平衡因子BF(BalanceFactor)定义为改结点的左子树的深度减去它的右子树的深度,则平衡二叉树上所有结点的平衡因子只可能为-1,0或者1。 为什么要引申出平衡二叉树的概念?原创 2014-11-08 18:27:25 · 1301 阅读 · 0 评论 -
KMP模式匹配
在开发中经常遇到需要查看一个字符串t是否在字符串s中存在,并找到其第一次出现的位置,也就是在字符串s中查找子串t,我们平常都是怎么实现那?我们最起码有三个方法可以用,CString和string中的find函数,以及string.h中的strstr函数,用起来既简单又快捷,CString是MFC中的东西,string是C++标准库的东西,strstr是C中string.h中的东西,貌似我们没必要非要自己实现定位查找功能……但是如果我偏要想自己实现那?我们能不能模仿MFC中的CString或者C++中的str原创 2014-10-25 22:31:45 · 918 阅读 · 1 评论 -
windows下线程知识详解
我原本以为在C++中有专门的创建多线程的函数或方法,现在才知道C++标准中还没有涉及到多线程,虽然没有标准的C++多线程,但是许多支持多线程的操作系统都提供了多线程库实现编写多线程程序。每一套操作系统都有自己的一套多线程类库,不过造成多线程编程没有标准可循,也就是没有移植性。不过现在好像有一个Boost线程库,Boost是由C++标准委员会类库工作组成员发起,致力于为C++开发新的类库的组织。现在原创 2013-09-27 14:58:21 · 2884 阅读 · 0 评论 -
H264的I/P/B帧类型判断
转自:http://blog.csdn.net/zhuweigangzwg/article/details/44152239这里首先说明下H264的结构:00 00 00 01/00 00 01->nal(1bytes)->slice->宏块->运动估计向量。如果h264的body中出现了前缀则由00 00 00 01/00 00 01变为00 03 00 00 01/00 03转载 2016-10-24 23:28:42 · 3769 阅读 · 0 评论