面试题

  1. 变量的声明和定义有什么区别?是否分配内存空间
  2. 如何判断两个结构体是否相等?需要逐个比较每个成员变量
  3. const作用关键词
  4. static变量在什么时候进行初始化
  5. 如何避免野指针?
  6. 引用与指针的区别与联系?
  7. 简要描述内存管理
  8. 堆与栈的区别?

  9. 生长方式:堆-向下;栈-向上

  10. 是否产生内存碎片:堆-不产生;栈-产生
  11. 变量内存空间不同:堆-堆空间;栈-栈空间
  12. 是否自动释放:堆-手动;栈-自动释放
  13. malloc/free与new/delete的区别与联系功能相同,手动分配和释放内存
    malloc/free是库函数,
    new/delete是标识符,