int do_it(int n){
int r = 0;
while(n) {
r += !(n%100);
n /= 10;
}
return r;
}
我不明白什么是“!”运营商在那里做。当使用类似 2021 的值调用时,此函数将有什么输出。 有人能帮我理解什么是“!”吗?在这种情况下会做什么?
这里
!
和其他地方一样,逻辑否定。请参阅https://en.cppreference.com/w/cpp/language/operator_logical。 int
可以转换为 bool
。 0
转换为false,其他所有值都是true
.
要查看
2021
的输出,您可以编写一个 main
,调用函数 do_it(2021)
,并将结果打印到控制台。如果您想跟踪每个步骤,您可以使用调试器。