Annotation of researchv9/cmd/cfront/libC/complex/io.c, revision 1.1.1.1

1.1       root        1: #include "complex.h"
                      2: 
                      3: ostream& operator<<(ostream& s, complex a) 
                      4: {
                      5:        return s<<"( "<<real(a)<<", "<<imag(a)<<")";
                      6: }
                      7: 
                      8: istream& operator>>(istream& s, complex& a)
                      9: /*
                     10:        f
                     11:        ( f )
                     12:        ( f , f )
                     13: */
                     14: {
                     15:        double  re = 0, im = 0;
                     16:        char    c = 0;
                     17: 
                     18:        s>>c;
                     19:        if (c == '(') {
                     20:                s>>re>>c;
                     21:                if (c == ',') s>>im>>c;
                     22:                if (c != ')') s.clear(_bad);
                     23:        }
                     24:        else {
                     25:                s.putback(c);
                     26:                s>>re;
                     27:        }
                     28: 
                     29:        if (s) a = complex(re,im);
                     30:        return s;
                     31: }
                     32: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.