<分区>
我知道三元条件需要表达式才能工作,但我想知道是否有像这样的聪明的解决方法:
#include <stdbool.h>
bool in_asc_order(const int *arr, size_t arr_size)
{
int count = 0;
bool result = false;
while(count < arr_size - 1)
{
(arr[count] <= arr[count + 1])? result = true : (return false);
count++;
}
return result;
}
而不是像这样写:
#include <stdbool.h>
bool in_asc_order(const int *arr, size_t arr_size)
{
int count = 0;
bool result = false;
while(count < arr_size - 1)
{
if(arr[count] <= arr[count + 1])
{
result = true;
}
else
{
return false;
}
count++;
}
return result;
}
我热衷于使用这个条件。任何帮助都会很棒。