C++面试常见问题总结(三)(本人面试遇到的问题记录,作为学习和交流用)

1、malloc和new的区别。

malloc是c语言中的,单纯的分配内存,不检查是否内存分配成功。New则是C++中的,分配时对构造函数,析构,虚函数等都要分配内存空间,且会检查是否分配成功,失败返回错误码。

malloc分配内存时必须自己指定要分配的空间,new则根据类型自动分配

Malloc是标准库函数,new是C++运算符,malloc不能初始化或者析构函数,这是编译器做的事。

2、C/C++程序编译的过程是什么?

预编译,用来处理预定义,之后是编译,主要检查语法错误,编译后生成的文件进入汇编器,生成汇编文件.s,之后进入链接器,将obj文件链接起来之后生成可执行文件。下图为网络截图

3、C++中类的内存结构是什么?

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值