
C/C++ Language
文章平均质量分 62
sakurawangz
这个作者很懒,什么都没留下…
展开
-
C/C++中的trigraph
C/C++ 为了照顾老一辈无产阶级革命家,他们的条件极其艰苦,键盘上缺了很多键,无法输入下面九个字符: # \ ^ [ ] { } | ~因此推出了 trigraph,简单的讲就是把上面的每个字符用其他三个字符来代替,替换的规则如下:[code="java"]#: ??=\: ??/^: ??'[: ??(]: ??){: ??<}...原创 2009-10-15 10:44:04 · 758 阅读 · 0 评论 -
(转)内存对齐
为了让CPU能够更舒服地访问到变量,struct中的各成员变量的存储地址有一套对齐的机制。这个机制概括起来有两点:第一,每个成员变量的首地址,必须是它的类型的对齐值的整数倍,如果不满足,它与前一个成员变量之间要填充(padding)一些无意义的字节来满足;第二,整个struct的大小,必须是该struct中所有成员的类型中对齐值最大者的整数倍,如果不满足,在最后一个成员后面填充。维基百科的[url...原创 2010-05-19 10:43:20 · 96 阅读 · 0 评论 -
const 修饰备忘
[code="c"]const char *const * p[/code]p是一个普通的指针,它指向一个指向常量的常量指针[code="c"]const char const * p[/code]与const char *p或char const *p等同,p是指向常量的普通指针[code="c"]const char *const p[/code]p是指向常量的常量指针,无...2010-10-20 11:48:34 · 106 阅读 · 0 评论 -
Linux Socket 相关函数备忘
【以下基本为转载】1、结构体 struct sockaddr, struct sockaddr_in, struct in_addr通用套接字数据结[code="c"]struct sockaddr {unsigned short sa_family; /* 地址族, AF_xxx */char sa_data[14]; /* 14字节的协议地址*/};[/code...原创 2011-10-09 12:05:10 · 179 阅读 · 0 评论 -
C++类间相互引用
两个类相互包含引用的问题不管是下文中提到的例子,还是任何情况,使得class A的头文件需要include class B的头文件,class B的也要引用A的头文件,这种状况下,貌似会出现有一个类未定义的问题从而无法通过编译。解决办法是:A或者B任选一个采用头文件(A.h)引用另一头文件(B.h)的方式不变,而另外一方的头文件(B)中则在定义该类之前写一句class A;然后在B...2011-07-24 22:50:25 · 938 阅读 · 0 评论 -
(转载)C++的计时
在Windows平台下,常用的计时器有两种,一种是timeGetTime多媒体计时器,它可以提供毫秒级的计时。但这个精度对很多应用场合而言还是太粗糙了。另一种是QueryPerformanceCount计数器,随系统的不同可以提供微秒级的计数。对于实时图形处理、多媒体数据流处理、或者实时系统构造的程序员,善用QueryPerformanceCount/QueryPerformanceFrequen...原创 2011-07-27 09:49:58 · 185 阅读 · 0 评论