gpt4 book ai didi

c - 究竟如何? : operator work in C?

转载 作者:行者123 更新时间:2023-12-03 15:25:30 25 4
gpt4 key购买 nike

我有一个问题,编译器如何对以下代码进行操作:

#include<stdio.h>

int main(void)
{
int b=12, c=11;
int d = (b == c++) ? (c+1) : (c-1);
printf("d = %i\n", d);
}

我不确定结果为什么是‍t d = 11

最佳答案

int d = (b == c++) ? (c+1) : (c-1);中:

  • c++的值是c的当前值11。另外,c递增到12。
  • b == 11为假,因为b为12。
  • 由于(b == c++)为false,因此使用(c-1)。同样,到此为止,必须完成c到12的增量。
  • 因为c是12,所以c-1是11。
  • d初始化为该值11。
  • 关于c - 究竟如何? : operator work in C?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60168998/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com