Windows平台程序和Android平台程序的差异

Windows平台程序和Android平台程序的差异
1 Windows平台环境和Android平台JVM虚拟机的差异:
  1)由于JVM虚拟机上的数据是大端处理的,而Windows平台上的数据是小端的,所以在一些数据的处理上需要进行转换;
  2)由于JVM虚拟机上的数据类型都是无符号的,而Windows平台上的数据类型是区分符号和无符号的,所以一些无符号数据类型需要进行特殊的处理;
  3)Windows平台上的数据类型比较灵活,比如整形和枚举可以进行相互转换,JVM虚拟机上就需要编写相应的枚举类进行转换;
  4)C语言中的数组,指针可以从中间某个位置进行操作,Java不行,可以用index指引操作的位置,模拟指针操作在原来的数据上;
  5)比如C语言里面的memcpy操作,Java需要拷贝;System.arraycopy();
2 Windows X86底层指令如SIMD的处理,有些超声成像系统的算法为了提高性能,使用了指令处理如SIMD,需要进行相应的转换才能运行在安卓平台上;
3 对比Windows Visual C++和Android NDK C++的差异:
  1)有些数据类型的定义有区别,比如字符串,字符指针等,通过头文件定义来处理其中的差异;
  2)对一些VC环境依赖的代码,比如文件操作等,需要进行特殊处理,就是进行重新编写相应的代码;
  3)对一些VC环境依赖MFC的代码,需要在安卓环境下面进行重新编写;
  4)对一些VC环境日志处理的代码,需要在安卓环境下面进行重新编写;
 

你可能感兴趣的:(Android,windows,android)