C/C++
sztyler
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
BIG-ENDIAN 和 LITTLE-ENDIAN
<br />BIG-ENDIAN、LITTLE-ENDIAN跟多字节类型的数据有关的比如int,short,long型,而对单字节数据byte却没有影响。<br />简单理解就是Big-endian是高字节在低地址,Litter-endian则高字节在高地址。<br />BIG-ENDIAN就是低位字节存储在内存的高端,高位字节存储在内存的低端。而LITTLE-ENDIAN正好相反。 <br /> 比如 int a = 0x05060708 <br /> 在BIG-ENDIAN的情况下存放为: <br原创 2010-06-26 12:58:00 · 728 阅读 · 0 评论 -
类型强制转换
<br />static_cast<type-id> (expression):<br />不进行类型安全检测,将expression 转换为type-id 类型.<br />1 用于基类和子类指针或引用的转换.由于不进行类型安全检测,故不安全<br />2 基本类型之间的转换.<br />3 不能转换const,volitale,__unaligned属性.<br /><br />const_cast<type-id> (expression):<br />修改类型的const或volitale,常用来将原创 2010-07-08 23:04:00 · 425 阅读 · 0 评论 -
关于sizeof关键字用法
首先强调的是,sizeof是c/c++里面的一个操作符,而不是函数。下面说说sizeof的注意点。基本原则:1、每个元素的起始地址要是自己宽度的整数倍,2、最后一个元素后,需要补齐到编译器默认的对齐宽度(不同编译器不一样,比如gnu是按4字节对齐,vs按最大成员的宽带对齐)3、结构体成员包含结构体成员时,结构体成员按其最大的内部成员长度N对齐。当指明了pragma pack(n)时,选择min(N,pragma pack(n))来对齐。第一:在不同的编译器下,对于class,struct,union类型,s原创 2010-06-20 12:04:00 · 573 阅读 · 0 评论 -
extern 函数指针 sprintf
<br />1 extern "C"<br />extern "C" 包含双重含义,从字面上即可得到:首先,被它修饰的目标是“extern”的;其次,被它修饰的目标是“C”的。让我们来详细解读这两重含义。 (1) 被extern "C"限定的函数或变量是extern类型的 extern是C/C++语言中表明函数和全局变量作用范围(可见性)的关键字,该关键字告诉编译器,其声明的函数和变量可以在本模块或其它模块中使用。记住,下列语句: extern int a; 仅仅是一个变量的声明,其并不是在原创 2010-10-13 09:24:00 · 2275 阅读 · 0 评论
分享