的逻辑运算中,什么数字认为是 ?非 的数字
什么是内联函数?
在函数声明或定义时,将 inline 关键字加在函数返回类型前面的就是内联函数。。。
在计算机科学中,内联函数(有时称作在线函数或编译时期展开函数)是一种编程语
言结构,用来建议编译器对一些特殊函数进行内联扩展(有时称作在线扩展);也就
是说建议编译器将指定的函数体插入并取代每一处调用该函数的地方(上下文),从
而节省了每次调用函数带来的额外时间开支。但在选择使用内联函数时,必须在程序
占用空间和程序执行效率之间进行权衡,因为过多的对较复杂的函数进行内联扩展将
带来很大的存储资源开支。另外还需要非常注意的是对递归函数的内联扩展可能带来
部分编译器的无穷编译。
什么是内存对齐?
结构体的内存布局依赖于 、操作系统、编译器及编译时的对齐选项。结构体内部成员的对齐要
求,结构体本身的对齐要求。最重要的有三点
一成员对齐。对于结构体内部成员,通常会有这样的规定:各成员变量存放的起始地址相对于结构
的起始地址的偏移量必须为该变量的类型所占用的字节数的倍数。但是也可以看到,有时候某些字段
如果严格按照大小紧密排列,根本无法达到这样的目的,因此有时候必须进行 。各成员变
量在存放的时候根据在结构中出现的顺序依次申请空间,同时按照上面的对齐方式调整位置,空缺的
字节编译器会自动填充也就是 。
二然后,还要考虑整个结构体的对齐需求。 标准规定结构体类型的对齐要求不能比它所有
字段中要求最严格的那个宽松,可以更严格。实际上要求结构体至少是其中的那个最大的元素大小的
整数倍。因为有时候我们使用的是结构体数组,所以结构体的大小还得保证结构体数组中各个结构体
满足对齐要求,同时独立的结构体与结构体数组中单个结构体的大小应当是一致的。
三编译器的对齐指令。中提供了 !来设定变量以 字节对齐方式。 字节对
齐就是说变量存放的起始地址的偏移量有两种情况:第一、如果 大于等于该变量所占用的字节数,
那么偏移量必须满足默认的对齐方式,第二、如果 小于该变量的类型所占用的字节数,那么偏移量
为 的倍数,不用满足默认的对齐方式。结构的总大小也有个约束条件,分下面两种情况:如果 大
于所有成员变量类型所占用的字节数,那么结构的总大小必须为占用空间最大的变量占用的空间数的
倍数。
" #传值”,“传指针”,“传引用”的作用?
值 传 递 : 只 给 函 数 提 供 输 入 值 , 需 要 复 制 开 销 , 大 对 象 很 少 使 用 值 传 递 。