登录

去注册 忘记密码?

登录

注册

去登录

  • 扫码关注公众号
  • 发送“我爱安卓
  • 即可获取验证码

注册

解锁回答区域

  • 扫码关注公众号
  • 发送“我爱安卓

若你登陆,将永久解锁;
若未登录,仅本机解锁。

解锁回答区域

获取注册验证码

  • 扫码关注公众号
  • 发送“我爱安卓
  • 即可获取验证码

每日一问 | C 语言中的隐式替换造成的奇怪的逻辑

鸿洋    2022-07-24 11:55   收藏

周末学习无意看到的,题目源自接口时间的深入 C 语言和程序运行原理,一起来看问题吧。


#include <stdio.h>
int main(void) {
  int x = -10;
  unsigned int y = 1;
  if (x < y) {
    printf("x is smaller than y.");
  } else {
    printf("x is bigger than y.");  
  }
  return 0;
}

这样的一段代码,问题来了:

  1. 最终会输出哪个分支?
  2. 造成这样的原因是?

自助提问入口:点击提交问题

删除留言

确认删除留言,会导致相关评论丢失?

取消 确定