gpt4 book ai didi

c - 这是做什么的?

转载 作者:行者123 更新时间:2023-12-02 18:01:10 25 4
gpt4 key购买 nike

Possible Duplicate:
The ternary (conditional) operator in C

这是我的老师协助下的代码示例。我不知道什么total = total*2+ (n=='1'? 1:0);做。我认为它将总数乘以 2,但是问号和 1:0 是什么意思?比率?

int bcvt(FILE *infile){
char n;
int i, total=0;
for(i=0; i<32; i++){
fscanf(infile, "%c", &n);
total = total*2+ (n=='1'? 1:0);
}
char dummy;
fscanf(infile, "%c", &dummy);
return total;
}

最佳答案

声明

(n=='1'? 1:0)

相当于

if ( n == '1' ) return 1
else return 0

因此,如果 n 为“1”,则返回 1,否则返回 0。

格式为:

( expression ? if-true-return-this-value : else-return-this-value )

关于c - 这是做什么的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10592547/

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