记录
1. java中的数据类型和c语言的有什么区别
a. j有基本数据类型、引用数据类型、常量有const修饰
b. c有基本数据类型、枚举类型、空类型、派生类(指针类型、数组类型、结构体类型、共用体类型、函数类型),常量是#define去定义
c. j中的char是两个字节,这个是对应Unicode;在c中是一个字节
对应ASCII码
d. java是可以支持跨平台,但是c是面向过程的语言,执行效率高,不支持跨平台。
2. java和c的编译上的区别
a. java是先将编码转换成字节码文件,再通过JVM转换为二进制码,再执行输出
b. c是直接将编码转换为二进制码,再由计算机去识别输出
3. java和c的内存管理区别
a. 在java有自动回收内存的机制,不用考虑内存的使用情况,用完就不用理,会自动回收,但是也不是所有的都被回收
b. 在c中的话,要直接malloc和直接去free,也就是有借有还,在使用一些数组等场景中,你得去先分配好内存后,才可以去使用。在使用完后要去释放才可以
4. 深拷贝和浅拷贝
a. 对基本数据类型进行值传递,对引用数据类型进行引用传递版的拷贝
b. 对基本数据类型进行值传递,对引用数据类型,创建一个新的对象,并复制其内容,此为深拷贝
leetcode目录放置的是每做一道的leetcode代码以及分析的东西