delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1997/01/18/17:28:12

From: awnbreel AT panix DOT com (Michael R Weholt)
Newsgroups: comp.os.msdos.djgpp
Subject: modulus operation with floats requires emulator?
Date: Sat, 18 Jan 97 19:18:28 GMT
Organization: Rookery Prawl
Lines: 31
Message-ID: <5br7o7$p2e@news1.panix.com>
NNTP-Posting-Host: mrw.dialup.access.net
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp

        I'm using Win95 on a pentium.  Norton Utilities reports that 
"Math Support is on chip".

        When I try to use the modulus operation, I can only get it to 
work using integers, not floats.  When I try it with floats, the 
debugger reports: "Error: invalid operands to binary %".  I get this 
message even when I try including math.h, or adding the -lm link 
option.

        Does this mean I have to get the 387 emulator and use it?

        I'm just learning C, so I suppose I could have something wrong 
with the source.  The following gets the debug message described 
above:

#include <stdio.h>
#include <math.h>

float   mod;

main()
{
    mod = 9.0 % 5.0;

    (void) printf("modulus: %f\n", mod);
    return(0);
}

Michael R Weholt
 http://www.panix.com/~mrw/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019