自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 C语言类型声明的文法

尝试过3种思路,最后才写出一个满意的推导式。支持带id和省略id的写法。如:long int * ( * id ) ()也支持省略id,即  long int * ( * ) () ,这也会被视为一个合乎语法的串,从语义上再根据上下文来决定缺省id是否合乎语义就可以了。先将 c 的类型声明先分为2个部分,前置类型段和符号声明段。再将符号声明段分为3个部分。

2013-12-19 02:00:08 1080 6

原创 IOCP的几点细节

1) 即使ReadFile或者WriteFile函数返回真,完成包还是会从GetQueuedCompletionStatus取得。2) 与完成端口句柄绑定的套接字,其设置超时选项虽然可以成功,却是无效的。因为其相当于非阻塞模式,超时只是对阻塞模式而言的。3) 一旦相关的套接字操作发生网络错误,GetQueuedCompletionStatus会返回假。通过GetQueuedCompleti

2011-11-16 18:36:07 1344

原创 Thunk for MS Window

先讲一个Windows窗口的问题。众所周知,Windows窗口API要求注册窗口,RegisterClass和CreateWindow函数注册和建立窗口,要在注册的时候填充WNDCLASSEX结构,写入自己实现的窗口消息处理函数,这个处理函数的原型:LRESULT CALLBAC

2011-09-30 00:40:26 750 1

原创 volatile的单纯语义

以前我一直认为C的volatile具有一些“平台相关”的语义,比如,与并发访问相关的栅栏。看来只有C#的volatile才有那样的语义。MS实现的C编译器连volatile操作的位置也不再保证,而是保有为了优化可以调动其位置的权利。像下面这样的代码(VS2010 VC10编译

2011-09-24 00:19:31 950 2

原创 Mingw下gcc4.5.0编译新版ffmpeg的问题

<br />下载了今年8月份的ffmpeg的源码后,在Mingw下编译。ffmpeg警告gcc版本过老,造成栈不对齐,可能存在问题。建议用gcc4.2以上版本。于是下载了最近的稳定版gcc4.5.0进行编译。然而编译不过,出现错误:strcasecmp声明不确切。<br />在头文件中定义(libavutil/avstring.h) #define strcasecmp stricmp<br />问题依旧。<br />于是自己实现了两个函数。<br />static inline char

2010-08-12 18:09:00 1025 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除