前两天去华为事业部面试,问到两个问题不知道怎么回答!

leedot 2015-10-25 10:57:28
加精
面试先是做题, 完了就是一个技术人员过来面试我, 就问了两个问题, 但是我答的并不好, 所以请教各位高人支招,以后怎么回答。
1. 对于内存管理你有什么看法?
这个问题我随便说了一些, 明显我自己都觉得说不过去, 因为我现在工作中遇到内存问题还是比较少,偶尔就是个数组越界,迭代器出界的小问题,真没什么深刻感受。
2.工作中遇到bug怎么解决的
我就回答说一般是先重现问题,然后根据问题去分析代码解决问题;然后面试人员就问重现不了的问题怎么办,我就说根据现象分析问题,然后修改代码长期测试。但是我也觉得这么回答太空泛了。。。。
...全文
12883 44 打赏 收藏 转发到动态 举报
写回复
用AI写文章
44 条回复
切换为时间正序
请发表友善的回复…
发表回复
小帅哥gaoyi 2016-11-08
  • 打赏
  • 举报
回复
1. 对于内存管理你有什么看法? 没有看法。 2.工作中遇到bug怎么解决的? 找人解决。
super_admi 2016-10-19
  • 打赏
  • 举报
回复
引用 42 楼 wm_liu 的回复:
[quote=引用 10 楼 super_admi 的回复:] 1. 对于内存管理你有什么看法? 没有看法。 2.工作中遇到bug怎么解决的? 找人解决。
你这样会被打的!我跟你说[/quote] 所以我们需要一个强健的体魄----不论打人,还是被打。
wm_liu 2016-10-19
  • 打赏
  • 举报
回复
引用 10 楼 super_admi 的回复:
1. 对于内存管理你有什么看法? 没有看法。 2.工作中遇到bug怎么解决的? 找人解决。
你这样会被打的!我跟你说
StevenV6 2016-08-05
  • 打赏
  • 举报
回复
感觉这出题的人自己都没想好怎么问,问的这么泛
undead1123 2016-04-13
  • 打赏
  • 举报
回复
我的极不专业的回答 1. 对于内存管理你有什么看法? 我都是交给GC管的 2.工作中遇到bug怎么解决的 能重现重现,不能重现靠猜
放纵的青春 2015-12-08
  • 打赏
  • 举报
回复
引用 10 楼 super_admi 的回复:
1. 对于内存管理你有什么看法? 没有看法。 2.工作中遇到bug怎么解决的? 找人解决。
面试官:对于内存管理你有什么看法? 面试者:没有看法。 面试官:工作中遇到bug怎么解决的? 面试者:找人解决。 面试官:什么都不懂来面试什么的? 面试者:整啥玩意呢,我来送快递的,你拉住我就问这么些啥玩意呢?
ghchen 2015-12-08
  • 打赏
  • 举报
回复
这是什么题目
BABY567go 2015-12-08
  • 打赏
  • 举报
回复
他招的不只是技术人员吧。
sunway007 2015-12-06
  • 打赏
  • 举报
回复
感谢讲得太好了!做个记号,学习一下
踩沙滩 2015-12-05
  • 打赏
  • 举报
回复
最不会回答很宽泛的问题了。。。。。。。
sm492592433 2015-11-27
  • 打赏
  • 举报
回复
我想,也许他自己都不知道怎么回答这样的问题。
flying_music 2015-11-22
  • 打赏
  • 举报
回复
华为好嚣张啊
Levin丶 2015-11-06
  • 打赏
  • 举报
回复
  • 打赏
  • 举报
回复
引用 12 楼 zhao4zhong1 的回复:
1. 对于内存管理你有什么看法? 让OS去管。 2.工作中遇到bug怎么解决的? 将其看作是一个功能点。
赵老师又调皮了
落幕年代 2015-11-05
  • 打赏
  • 举报
回复
华为去个蛋蛋
Mr打柴人 2015-11-05
  • 打赏
  • 举报
回复
引用 3 楼 liganglester 的回复:
题目太大,没有理解出题者的动机。试着说说我想到的。 1. 对于内存管理你有什么看法? - 动态内存尽量谁申请谁释放,分工明确。避免漏释放和重复释放。 - 对于嵌入式系统,分析最常用的内存大小,优化内存池配置。 - 申请到内存后首先初始化内容。 - 保证指针变量初始化 - 评估调用深度,避免栈溢出。 - 如果内存足够,管理信息时不要过于节省内存,造成效率降低或者代码可读性降低。 2.工作中遇到bug怎么解决的 - 如果问题可以稳定再现, 设置断点确定问题现场 - 对于数据在未知时机被修改(一般是越界)的问题,VC的条件断点很有用。 - 如果问题不可再现需要得到bug产生时的相关数据,log等,进行仔细分析。 - 如果仍然没有进展(没有办法的办法),根据bug现象,在代码里增加log输出,期待下次再发生时能得到有用信息。 - 修改bug时,如果是修改共通代码,一定要慎之又慎,因为系统大时,有很多我们遇见不到的系统之间的联系。最好不要轻易修改共通部分,被使用范围越广的模块越是如此。 - 修改后测试,不但要针对问题是否改好进行测试,还要对相关功能,主要功能进行回归测试。 大概这些吧,还是觉得题目太大了。
这么长都说完,我不信面试官不服
HS-HDU 2015-11-04
  • 打赏
  • 举报
回复
学习来了
it鸟 2015-11-04
  • 打赏
  • 举报
回复
当年华为来我们学校招聘,当时那架势,中国X动,X通,X信的人都来了。 鄙人过五关,斩五将,最后被一个部门经理给斩了。就让我用英语介绍一下自己,想想当年那境况,自己缴械投降。
PCCYC 2015-11-02
  • 打赏
  • 举报
回复
作为一个有工作经验的人来说,我可能回答没那么官方: 内存管理其实就是用完就要释放,在C\C++里,凡是用API函数分配的内存,用完之后就要手动释放,如果是代码块中的变量就不用管。在C#中大部分都是系统托管释放,但小部分也是需要手动释放的,如:Marshal.AllocHGlobal,还有些API函数在执行过程中会消耗内存,但这些API通常也存在一个对应的释放API函数,这些一般也是实战中总结的经验。平时你根本不会想到。 工作中遇到BUG: 1.一般完成一段内容就要调试一下,看看运行有什么问题,一旦出现问题就及时修改。 2.分段排除法,根据代码的执行循序,逐步排查,找到出错的位置。 3.值分析法,有时候明面的逻辑看不出什么问题,那就只能通过值来找问题,将值输出或插入断点来观察值的变化。 4.日志,比如在开发服务或驱动时,在开发过程中你看不到执行过程,将执行过程打印到文本,用于事后分析。
PCCYC 2015-11-02
  • 打赏
  • 举报
回复
作为一个有工作经验的人来说,我可能回答没那么官方: 内存管理其实就是用完就要释放,在C\C++里,凡是用API函数分配的内存,用完之后就要手动释放,如果是代码块中的变量就不用管。在C#中大部分都是系统托管释放,但小部分也是需要手动释放的,如:Marshal.AllocHGlobal,还有些API函数在执行过程中会消耗内存,但这些API通常也存在一个对应的释放API函数,这些一般也是实战中总结的经验。平时你根本不会想到。 工作中遇到BUG: 1.一般完成一段内容就要调试一下,看看运行有什么问题,一旦出现问题就及时修改。 2.分段排除法,根据代码的执行循序,逐步排查,找到出错的位置。 3.值分析法,有时候明面的逻辑看不出什么问题,那就只能通过值来找问题,将值输出或插入断点来观察值的变化。 4.日志,比如在开发服务或驱动时,在开发过程中你看不到执行过程,将执行过程打印到文本,用于事后分析。
加载更多回复(24)

15,440

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧