File:  [Research Unix] / researchv9 / cmd / cfront / libC / complex / io.c
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Tue Apr 24 17:21:59 2018 UTC (8 years, 1 month ago) by root
Branches: belllabs, MAIN
CVS tags: researchv9-SUN3_old, researchv9-SUN3, HEAD
researchv9-SUN3(old)

#include "complex.h"

ostream& operator<<(ostream& s, complex a) 
{
	return s<<"( "<<real(a)<<", "<<imag(a)<<")";
}

istream& operator>>(istream& s, complex& a)
/*
	f
	( f )
	( f , f )
*/
{
	double	re = 0, im = 0;
	char 	c = 0;

	s>>c;
	if (c == '(') {
		s>>re>>c;
		if (c == ',') s>>im>>c;
		if (c != ')') s.clear(_bad);
	}
	else {
		s.putback(c);
		s>>re;
	}

	if (s) a = complex(re,im);
	return s;
}


unix.superglobalmegacorp.com

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