- 博客(5)
- 资源 (4)
- 收藏
- 关注
原创 copy constructor 和copy assignment operator的比较
拷贝构造函数 拷贝构造函数解决的问题是:当一个对象被复制时,如何对新建的对象进行初始化问题。由于对象是一种复杂的数据,与系统的内建数据类型相比,它内部具有复杂的行为。当一个对象产生时如何对内部数据进行初始化是一个关键的问题,普通的数据类型我们可以使用简单的赋值语句完成 例如 int i = 0;而对于一个类的实例则需要构造函数来完成初始化。现在的问题是当一个对象被复制时,怎样进行初始化?一个对
2005-02-28 13:12:00 1946
原创 C动态变量生成的小例子!
自从进大学以来就学习C语言,只是边学边玩,想起来就学点,想不起来就算了哦.有时候想自己学的还可以,有时候很差! 通过指针生成空间的时候要先使用MALLOC生成空间,否则后果难以预料. 下面就一个例子(不是很完美):#include #include #define N 10 //定义最大空间大小int main(){char *s[5]; //指针数组,用来存放输入
2005-02-28 12:03:00 2812
原创 入栈方式
_cdecl 按从右至左的顺序压参数入栈,由调用者把参数弹出栈。对于“C”函数或者变量,修饰名是在函数名前加下划线。对于“C++”函数,有所不同。 如函数void test(void)的修饰名是_test;对于不属于一个类的“C++”全局函数,修饰名是?test@@ZAXXZ。 这是MFC缺省调用约定。由于是调用者负责把参数弹出栈,所以可以给函数定义个数不定的参数,如printf函数。
2005-02-27 14:03:00 2147
原创 pack详解
#pragma pack(8)struct S1{ char a; long b;};struct S2 { char c; struct S1 d; long long e;};#pragma pack()sizeof(S2)结果为24.成员对齐有一个重要的条件,即每个成员分别对齐.即每个成员按自己的方式对齐.也就
2005-02-26 18:33:00 2677
原创 通过#pragma pack(n)改变C编译器的字节对齐方式
在C语言中,结构是一种复合数据类型,其构成元素既可以是基本数据类型(如int、long、float等)的变量,也可以是一些复合数据类型(如数组、结构、联合等)的数据单元。在结构中,编译器为结构的每个成员按其自然对界(alignment)条件分配空间。各个成员按照它们被声明的顺序在内存中顺序存储,第一个成员的地址和整个结构的地址相同。 例如,下面的结构各成员空间分配情况:struct tes
2005-02-26 18:05:00 1561
Embedded Programming with android Bringing up and android system from scratch
2020-06-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人