近期遇到的奇奇怪怪的面试题

1、今天从朋友那儿搞到了一道看似很怪,却极其简单的一道面试题
int a=0;
while(a<=printf("HI"))
{
    a++;
}
是不是很懵,一个变量怎么会去和一个函数比较呢,我当时也是一头雾水,后来发现忽略了一个最大的点,就是printf的返回值,是不是又懵了,
最简单的一个函数,却想不起来还有返回值这件事了,这也才是这道题的真正考点,printf函数的返回值是字符的个数,所以这里就等价于a<=3,
最终的效果就是打印了三遍HI

2、一个极其被忽略的关键字----volatile
很多知道他的都喜欢叫他关闭优化,但我觉得不够准确,起码这样不好去理解这个关键字到底有什么作用
volatile是易变的,不稳定的意思,【!!!用它修饰的变量表示可以被某些编译器未知的因素更改,比如操作系
统,硬件或者其他线程等!!!】使用这个关键字会对该变量的代码不作优化处理,在某些情况可以提供对特殊
地址的稳定访问
volatile和const,大部分人都会觉得他们是水火不容的,既然易变,那肯定和const就是互斥的
其实也不是,起码不完全是,我们一般说的情况都是在内部,但是volatile修饰的变量表示可以
被某些编译器未知的外部因素,如中断,操作系统,硬件,或其他的线程来修改,这个时候,编
译器如果作优化,那么外部效果就没了,所以这里不该被编译器优化,如果同时const修饰,则只
能说明,他不应该被需改,而不是一定不能被改,通过外部手段是可以改的,所以水火容不容是
要看情况的,如果是外部要去操作这个变量,而你因为不希望他改变所以加了const,但是无赖,
但是可能同时你有希望外部操作,不希望优化把外部操作屏蔽,就加了volatile,做了双保险,这
种情况就是可以同时修饰变量的。
从这里也可以知道
const的含义是“请作为常量使用”,而并非“那肯定不能变”
volatile的含义是“请不要作没谱的优化,我外部可能会使这个值变掉的”,而并非“你可以改这个值”,
所以不要妄想在没有可能出现外部操作的时候,通过此法来改变const修饰的值。

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
helpdesk面试试题通常涉及技术能力、沟通能力和问题解决能力等方面。以下是我对一些常见helpdesk面试试题的回答: 1. 请介绍一下你的技术背景和经验。 我在这个领域有两年的工作经验,之前在一家IT服务公司担任helpdesk支持的角色。我熟悉Windows和Mac操作系统,并且熟悉常见的办公软件。我也理解网络基础知识和常见问题的解决方法。 2. 你如何处理用户来电或发送的支持请求? 首先,我会确认用户的问题,了解他们的需求。然后,根据问题类型,我会尝试远程解决,例如通过遥控桌面。如果无法远程解决,我会询问并指导用户尝试一些简单的步骤。如果问题仍然无法解决,我会安排上门支持或将问题转交给更高级的技术人员。 3. 你如何与用户保持有效的沟通? 在和用户沟通时,我会尽量避免使用技术术语,用简单易懂的语言解释问题和解决方法。我会耐心地倾听用户的需求,并尽量以友好和有礼的方式回应他们的问题。此外,我会保持良好的沟通节奏,及时向用户提供关于问题解决进展的反馈。 4. 举例说明你在以前的工作中如何解决复杂的技术问题。 在以前的工作中,有一次用户遇到了无法登录电子邮件的问题。通过与用户沟通,我了解到用户的密码可能已过期。我指导用户重置密码并尝试再次登录。然而,问题仍然存在。我继续与用户合作,了解他们使用的email客户端和操作系统,以便更好地识别问题。最终,我发现了维护问题,并与相关团队合作解决了该问题。 以上是对一些helpdesk面试试题的回答,希望能帮助到您。如果您还有其他问题,请随时提问。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值