函数指针总结

最近复习c语言,这里总结一下函数指针。
首先是一般函数指针的定义。
其中两个括号是不可缺少的,(*funcPtr)表明funcPtr是一个指针,(char *, int)表明func是一个函数,函数参数为char *和int,返回值为int。接下来看下一个

阅读全文 2013年09月21日 分类:学习笔记C++

c++运算符重载总结

c++的一大特性就是重载(overload),通过重载可以把功能相似的几个函数合为一个,使得程序更加简洁、高效。在c++中不止函数可以重载,运算符也可以重载。由于一般数据类型间的运算符没有重载的必要,所以运算符重载主要是面向对象之间的。

1.一般运算符重载

在进行对象之间的运算时,程序会调用与运算符相对应的函数进行处理,所以运算符重载有两种方式:成员函数和友元函数。成员函数的形式比较简单,就是在类里面定义了一个与操作符相关的函数。友元函数因为没有this指针,所以形参会多一个。

阅读全文 2012年09月28日 分类:学习笔记C++

c#解析FLV文件

在上一篇FLV文件格式解析中,我们对FLV的文件结构有了一定了解,现在我们就可以对FLV文件解析解析了。我这里用的是c#,只要理解了过程java、c++都是可以的。

1.工具类

在解析的过程中,我们会和byte做各种运算,所以我定义了一个byte工具类ByteUtils:

阅读全文 2012年09月24日 分类:学习笔记C#图像处理

TCHAR,WCHAR,LPSTR,LPWSTR和LPCTSTR

从现在开始要进入嵌入式的开发了,复习一下c语言,先从基本的数据类型开始。TCHAR,WCHAR,LPSTR,LPWSTR和LPCTSTR,这几个看起来差不多,也很容易混淆,他们都是跟字符有密切关系的。要想知道他们的由来以及作用就必须先了解字符的编码。

阅读全文 2012年09月15日 分类:学习笔记C++

用c#写的directshow简易视频播放器

很久没动directshow了,现在一直用c#写程序,突然看到directshow在.net下也有library,于是想试试在.net下的directshow。这个播放器是参照directshownet library中的例子改的,自己加了一些控制方面的。
先说一下directshownet,这是一个用c#写的directshow类库,是一个开源项目,sourceforge主页:http://directshownet.sourceforge.net/。不过这个项目关注的人不是很多,代码也很久没更新了,毕竟使用directshow的大都是c++项目,实现起来也是c++更高效。在.net里也可以调用VB的directshow类库来实现,不过我觉得这样太麻烦了,还是用directshownet这个现成的类库来的快。

阅读全文 2012年09月10日 分类:学习笔记C#

文件批量重命名小软件ReFileName

自己编写的一个小软件,使用正则批量替换文件名的小工具。要说编写这个小软件的原因嘛,就是从网上下了一部电视剧或动漫后发现文件名长的要命,放电脑上放还好,要是放手机或其他小屏幕的设备上的话,看个名字都要等他慢慢滚动过来。使用rename嘛,太麻烦,也不想记这么多命令,最后想到了正则。文件名就是字符串,用正则的话真是恰到好处。

阅读全文 2012年08月29日 分类:学习笔记C#个人作品

C#实现win7任务栏进度条

用过win7的人都知道,当我们用IE或firefox下载某个东西是任务栏上就会出现进度条,这大大增加了界面的友好程度,如下图所示。那我们怎么用c#来实现呢?

任务栏进度条并不是在.net框架里的,当时我在.net里找了很久,走了不少弯路,惭愧啊!

由于.net是面向所有windows平台的,win7只是一个特例,微软也不会为了一个win7就增加.net的容量。win7的任务栏进度条有一个专门的类TaskbarManager,他在Windows API Code Pack里面,下载地址:http://archive.msdn.microsoft.com/WindowsAPICodePack 里面包含了所有的源代码以及大量的示例,并附有文档

阅读全文 2012年04月14日 分类:学习笔记C#

C#重定向ffmpeg输出流

最近用c#做了一个ffmpeg的gui,用来合并、切割视频,其中需要把ffmpeg.exe的输出流显示出来,这就需要重定向ffmpeg的输出流,这个方法也适用x264、mencoder这些编码器的重定向。
c#要调用外部程序有许多方法,我这里选用调用Process的方法,也就是新建一个ffmpeg的进程,具体代码如下。

阅读全文 2012年04月12日 分类:学习笔记C#x264

Ubuntu下Eclipse的配置

最近要学嵌入式,电脑上装了Ubuntu 12.04,gcc的命令行实在用的别扭,于是又装了Eclipse,但死活不能运行,总是有“launch failed. Binary file not found.”的错误。在网上找了一天终于解决了,写出来给大家看看。

首先安装Eclipse,可以到Ubuntu自带的软件中心搜索Eclipse,点击安装就行了。或者进入终端输入:

阅读全文 2012年03月09日 分类:软件学习笔记C++Ubuntu

指针和数组的区别

一说到指针和数组,大多数人都认为两者是等价的,在大多数的情况下,指针和数组可以相互替换着用,但两者还是有很多不同的。
数组要么在静态存储区被创建(如全局数组),要么在栈上被创建。数组名对应着(而不是指向)一块内存,其地址与容量在生命期内保持不变,只有数组的内容可以改变。

阅读全文 2012年01月10日 分类:学习笔记C++

近期文章

微信公众平台

分类目录

友情链接