②:只能把一个父类变量转换为其子类类型,两个互相没有关系的类不能转换,编译会出错;在将一个父类实例转换为子类类型时,该实例实际上必须为子类类型,即运行时类型为子类类型,否则会抛出ClassCastException异常 此时就需要用instanceof运算符,来保证强制类型转换的安全; 基本形式: a instanceof b, a是一个引用类型...
结构体是通过指针实现的强制类型转换吧。main(){ struct A1 x = {10, 'A'};struct A2 y = {'A', 10};struct A2 z;struct A2 *p;p = (struct A2 *)&x;//这种强制类型转换,把x当A2类型变量使用就通过这个p指针 z.a = p->a;printf("%d",z.a);} ...