C语言
S-A-M
喜欢乒乓球,生活与IT的人。
展开
-
VC Memory查看结构体对齐方式图解
该结构体实际占用内存12Byte(VC)(含自动填补的空间),至于原因可查看结构体对齐准则原创 2012-03-05 16:33:21 · 909 阅读 · 0 评论 -
结构体字节对齐原则
其实字节对齐的细节和具体编译器实现相关,但一般而言,满足三个准则: 1) 结构体变量的首地址能够被其最宽基本类型成员的大小所整除; 2) 结构体每个成员相对于结构体首地址的偏移量都是成员大小的整数倍,如有需要编译器会在成员之间加上填充字节;例如上面第二个结构体变量的地址空间。 3) 结构体的总大小为结构体最宽基本类型成员大小的整数倍,如有需要编译器会在最末原创 2012-03-05 15:46:56 · 941 阅读 · 0 评论 -
C语言查看多字节变量中每单个字节数据的方法
先看一段代码:#includevoid main(){ int a=0x21109225; char* pAddress=(char*)&a; printf("%x\n",*pAddress); printf("%x\n",*(++pAddress));} 我们知道在VC中int型占4个字节,而char型占1个字节,所以主函数中的语句"原创 2012-02-24 19:43:38 · 5094 阅读 · 1 评论 -
字符类型的连续输入除空白字符干扰
问题: 有时我们在进行字符类型的连续输入时会习惯性地用空格将每两个数据隔开,但这常常会出问题。比如下面代码: int CreateBiTree(BiTree &T){ char tmp; scanf("%c",&tmp); while(tmp== ); if(tmp==#) T=NULL; else {原创 2011-06-17 19:14:00 · 753 阅读 · 0 评论 -
纯C语言中数组、指针、字符串问题
大家在用纯C来进行有关字符串操作时并不像C++那样方便,因为C++里面封装了CString类以及很多很全面的与之相关的处理函数,而C里面很多地方还没有这么人性化。下面讨论一些或许大家会碰到的一些问题: 1.选用字符指针还是字符数组来存储字符串的问题。 2.两种存储方式分别以何种方式来管理输入字符串的问题。 3.两种方式的输出问题。原创 2011-06-03 22:03:00 · 961 阅读 · 0 评论