--校招就像一场厮杀,弱者就要落幕--
指针:32位为4;64位为8; //一般都是默认32位下同
1、 结構体的大小等于结构体内最大成员大小的整数倍
2、 结构体内的成员的首地址相对于结构体首地址的偏移量是其类型大小的整数倍,比如说double型成员相对于结构体的首地址的地址偏移量应该是8的倍数
3、 为了满足规则1和2编译器会在结构体成员之后进行字节填充
结构体用于存储一組数据类型不同的变量、联合体也是,但联合体所有成员共享一段存储空间编译器只为联合类型的变量分配最大成员变量的空间大小、枚举是一组命名了的整数,用于代表一些可能情况
在C语言中,static主要定义全局静态变量定义局部静态变量,定义静态函数;
const常量有数据類型而宏常量没有数据类型。编译器可以对前者进行类型安全检查而对后者只进行字符替换,没有类型安全检查
Client/Server是建立在局域网的基础上的(安全控制能力较高,适用于需求较复杂的用户群).Browser/Server是建立在广域网的基础上的(适应范围更强用户群庞大).
BusyBox 是一个集成了一百多个最常用linux命令和工具的软件。BusyBox 包含了一些简单的工具例如ls、cat和echo等等,还包含了一些更大、更复杂的工具例grep、find、mount以及telnet。有些人将 BusyBox 称為 Linux 工具里的瑞士军刀简单的说BusyBox就好像是个大工具箱,它集成压缩了 Linux 的许多工具和命令也包含了 Android 系统的自带的shell。
一个进程包括代码、數据和分配给进程的资源。fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程也就是两个进程可以做完全相同的事,但如果初始参数或者传入的变量不同两个进程也可以做不同的事。
所谓死锁:是指两个或两个以上的进程在执行过程中因争夺资源而造成嘚一种互相等待的现象,若无外力作用它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁这些永远在互相等待的进程称为死锁进程。
必要条件:互斥、不可剥夺、请求和保持、循环等待
BSS、数据段、代码段(代码、字符常量)、堆(动态分配内存)、栈(局部变量)
PS:程序编译中的全局数据区(静态区)(static):全局变量和静态变量的存储是放在一块的初始化的全局变量和静态变量在一塊区域,未初始化的全局变量和静态变量在相邻的另一块区域另外文字常量区,常量字符串就是放在这里程序结束后由系统释放。
(1) BSS段(bss segment):通常是指用来存放程序中**未初始化**的全局变量的一块内存区域BSS段属于静态内存分配。
(2) 数据段(data segment):通常是指用来存放程序中**已初始化**的全局变量的一块内存区域数据段属于静态内存分配。