笔试考点

来源:互联网 发布:xindow8打开所有软件 编辑:程序博客网 时间:2024/06/11 19:33

声明多维数组只有最靠近数组名的那一维的大小可以省略。


操作系统位数一般根据指针类型的位数确定。


0x表示十六进制开头。


宏定义是替换,不做计算,也不做表达式求解。


逻辑与和逻辑或操作符总是先计算其左操作数,然后再计算其右操作数。只有在仅靠左操作数的值无法确定该逻辑表达式的结果时,才会求解其右操作数。这种求值策略被称为“短路求值(short-circuit evaluation)”。


(Java)被final修饰的变量不会自动改变类型,当2个final修饰的变量相操作时,结果会根据左边变量的类型而转化。


++和printf不是原子操作,随时可能被抢占资源。


*操作符(解引用操作符)将获取指针所指的对象;给引用赋值修改的是该引用所关联的对象的值,而不是使引用与另一个对象关联。

在表达式中使用数组名时,该名字会自动转换为指向数组第一个元素的指针。


模版是一个蓝图,它本身不是类或函数。编译器用模板产生指定的类或函数的特定类型版本,这个过程称为实例化。


sizeof(结构体),内存对齐。默认对齐方式为自然对界(natural alignment),是指按结构体的成员中size最大的成员对齐。位域。

通俗解释:

1、  结构体的大小等于结构体内最大成员大小的整数倍 
2、  结构体内的成员的首地址相对于结构体首地址的偏移量是其类型大小的整数倍,比如说double型成员相对于结构体的首地址的地址偏移量应该是8的倍数。 
3、  为了满足规则1和2编译器会在结构体成员之后进行字节填充!

对Union结构体,sizeof的取值不仅考虑sizeof最大的成员,还要考虑对齐字节,对齐字节的取值是取成员类型字节最大值与指定对齐字节(32位机器默认是4,64位机器默认是8)两者中的较小值。


(Java)instanceof,判断一个对象是否为某个类的实例(包括子类或接口类)。


赋值表达式的值是其左操作数的值,其结果的类型为左操作数的类型。


 int putchar(int ch),该函数的功能是在stdout上输出单个字符;int feof(FILE *stream),如果文件结束,则返回非0值,否则返回0,文件结束符只能被clearerr()清除。


float与double的零值比较。


柔性数组

http://www.cnblogs.com/nchxmoon/p/3145480.html

http://www.cnblogs.com/qmlm8844/p/3459649.html


面向对象五大原则(solid)

单一职责原则(Single-Responsibility Principle):一个类,最好只做一件事,只有一个引起它的变化,可看作是低耦合、高内聚在面向对象原则上的引申;

开放封闭原则(Open-Closed Principle):软件实体应该是可扩展的,而不可修改的,即对扩展开放,对修改封闭;

Liskov替换原则(Liskov-Substituion Principle):子类必须能够替换基类,体现了对继承机制的约束规范,保证系统在运行期内识别子类,是保证继承复用的基础;

接口隔离原则(Interface-Segregation Principle):使用多个小的专门的接口,而不是一个大的总接口;

依赖倒置原则(Dependency-Inversion Principle):具体依赖于抽象,高层模块不依赖于底层模块。


大端模式和小端模式。Hunger:小端模式将数据的所有位逆转存储到内存中。


C++未定义行为。


死代码的含义是指永远不会被执行到的代码段。


子类和子类型

0 0
原创粉丝点击