How to round up a double value to an integral value (long int) in C

1 Answer

0 votes
#include <stdio.h>
#include <math.h>
#include <fenv.h>

int main(void) {

    fesetround(FE_UPWARD);

    printf("%ld\n", lrint(2.4));
    printf("%ld\n", lrint(2.5));
    printf("%ld\n", lrint(2.6));

    printf("%ld\n", lrint(-2.4));
    printf("%ld\n", lrint(-2.5));
    printf("%ld\n", lrint(-2.6));
}



/*
run:

3
3
3
-2
-2
-2

*/

 



answered Aug 1, 2022 by avibootz
edited Aug 1, 2022 by avibootz
...