Re: Remainder ( % ) operator and GCC

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wednesday 09 November 2005 19:19, Ian Lance Taylor wrote:
> Ladislav Mecir <lmecir@xxxxxxxxxxx> writes:
> > Could you give me an advice how to make the following program (and
> > programs using many times the % operator) run reliably when compiled
> > by GCC on different operating systems even when the user gives -1 as
> > the B value?
> >
> > #include <stdio.h>
> > int main(int argc, char *argv[]) {
> >     int a = -2147483647;
> >     int b;
> >     printf ("The value of B: ");
> >     scanf ("%i", &b);
> >     printf ("%i %% %i: %i", a, b, (a - 1) % b);
> >     return 0;
> > }
>
> Don't use '%'.  It is machine dependent when used with a negative
> number.

What should one use instead? What is the portable, machine-independent 
alternative?


Cheers,

		Frans

[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux