%!PS-Adobe-1.0 %%Creator: devps (Pipeline Associates, Inc.) %%CreationDate: Fri Sep 13 13:06:57 1996 %%Pages: (atend) %%DocumentFonts: (atend) /devps 180 dict def devps begin /res 10.000000 def /y_offset 843 def /X{exch}bind def /mm {transform round X round X itransform} bind def /r{rmoveto}bind def /m{moveto}bind def /l{lineto}bind def /rl{rlineto}bind def /st{stroke}bind def /gs{gsave}bind def /gr{grestore}bind def /cp{currentpoint}bind def /np{newpath}bind def /ct{curveto}bind def systemdict /setpacking known { /savepacking currentpacking def true setpacking } if /m0{0 0 moveto}bind def /xc{//res div}bind def /yc{//res neg div //y_offset add}bind def /lc{yc X xc X l st}bind def /mc{yc X xc X m}bind def /el{gs /a X def a div 1 X scale cp np a xc 2 div 0 360 arc st gr}bind def /ar{cp 7 2 roll np xc 5 1 roll atan 3 1 roll atan X arc st}bind def /sp{yc X xc X 6 2 roll yc X xc X 6 2 roll yc X xc X 6 2 roll ct}bind def /V{//res neg div //y_offset add currentpoint pop X m}bind def /H{//res div 0 transform X round X itransform pop currentpoint X pop moveto}bind def /h{//res div 0 r}bind def /v{//res neg div 0 X r}bind def /S{X H show}bind def /A{H //res div 1 index stringwidth pop sub 1 index length div 0 3 2 roll ashow}bind def /psize 10 def /height 0 def /cheight { height 0 ne { height } { psize } ifelse } bind def /slant 0 def /FF{findfont X dup 30 div 0 mm pop setlinewidth /psize X def [psize 0 cheight slant sin slant cos div mul cheight 0 0] makefont setfont}bind def /shade{gs /dy X def /dx X def np m 0 /dy rl /dx 0 rl 0 /dy neg rl /dx neg 0 rl closepath .9 setgray fill gr}bind def 1 setlinecap /resolution res 72 mul def /startFig { /SavedState save def userdict maxlength dict begin currentpoint transform DocumentInitState setmiterlimit setgray setdash setlinejoin setlinecap setlinewidth setmatrix itransform moveto /ury exch def /urx exch def /lly exch def /llx exch def /y exch 72 mul resolution div def /x exch 72 mul resolution div def currentpoint /cy exch def /cx exch def /sx x urx llx sub div def /sy y ury lly sub div def sx sy scale cx sx div llx sub cy sy div ury sub translate /DefFigCTM matrix currentmatrix def /initmatrix { DefFigCTM setmatrix } def /defaultmatrix { DefFigCTM exch copy } def /initgraphics { DocumentInitState setmiterlimit setgray setdash setlinejoin setlinecap setlinewidth setmatrix DefFigCTM setmatrix } def /showpage { initgraphics } def }bind def /clipFig { currentpoint 6 2 roll newpath 4 copy 4 2 roll moveto 6 -1 roll exch lineto exch lineto exch lineto closepath clip newpath moveto }bind def /doclip { llx lly urx ury clipFig } def /endFig { end SavedState restore }bind def /globalstart { fontnum psize slant height resolution currentpoint pagesave restore gsave }bind def /globalend { grestore moveto /resolution exch def /height exch def /slant exch def /psize exch def /fontnum exch def F /pagesave save def }bind def /fontnum 1 def systemdict /setpacking known { savepacking setpacking} if end /BP{ save mark devps begin m0 /DocumentInitState [ matrix currentmatrix currentlinewidth currentlinecap currentlinejoin currentdash currentgray currentmiterlimit ] cvx def }bind def /EP{ end cleartomark restore showpage}def /Encoding-1 256 array def 0 1 255 {Encoding-1 exch /.notdef put} for Encoding-1 8#301 StandardEncoding 8#101 26 getinterval putinterval %A-B Encoding-1 8#341 StandardEncoding 8#141 26 getinterval putinterval %a-b Encoding-1 8#241 StandardEncoding 8#301 16 getinterval putinterval %accents Encoding-1 8#373 StandardEncoding 8#365 1 getinterval putinterval %dotlessi Encoding-1 dup 8#41 /copyright put dup 8#42 /registered put dup 8#43 /trademark put dup 8#44 /logicalnot put dup 8#45 /Eth put dup 8#46 /eth put dup 8#47 /Thorn put dup 8#50 /thorn put dup 8#51 /brokenbar put dup 8#52 /degree put dup 8#53 /divide put dup 8#54 /multiply put dup 8#55 /minus put dup 8#56 /onehalf put dup 8#57 /onequarter put dup 8#60 /threequarters put dup 8#101 /Aacute put dup 8#102 /Acircumflex put dup 8#103 /Adieresis put dup 8#104 /Agrave put dup 8#105 /Aring put dup 8#106 /Atilde put dup 8#107 /Ccedilla put dup 8#110 /Eacute put dup 8#111 /Ecircumflex put dup 8#112 /Edieresis put dup 8#113 /Egrave put dup 8#114 /Iacute put dup 8#115 /Icircumflex put dup 8#116 /Idieresis put dup 8#117 /Igrave put dup 8#120 /Ntilde put dup 8#121 /Oacute put dup 8#122 /Ocircumflex put dup 8#123 /Odieresis put dup 8#124 /Ograve put dup 8#125 /Otilde put dup 8#126 /Scaron put dup 8#127 /Uacute put dup 8#130 /Ucircumflex put dup 8#131 /Udieresis put dup 8#132 /Ugrave put dup 8#133 /Ydieresis put dup 8#134 /Zcaron put dup 8#135 /aacute put dup 8#136 /acircumflex put dup 8#137 /adieresis put dup 8#140 /agrave put dup 8#141 /aring put dup 8#142 /atilde put dup 8#143 /ccedilla put dup 8#144 /eacute put dup 8#145 /ecircumflex put dup 8#146 /edieresis put dup 8#147 /egrave put dup 8#150 /iacute put dup 8#151 /icircumflex put dup 8#152 /idieresis put dup 8#153 /igrave put dup 8#154 /ntilde put dup 8#155 /oacute put dup 8#156 /ocircumflex put dup 8#157 /odieresis put dup 8#160 /ograve put dup 8#161 /otilde put dup 8#162 /scaron put dup 8#163 /uacute put dup 8#164 /ucircumflex put dup 8#165 /udieresis put dup 8#166 /ugrave put dup 8#167 /ydieresis put dup 8#170 /zcaron put pop /Enc-dict 30 dict def Enc-dict /tmpstr1 50 string put Enc-dict /tmpstr2 50 string put Enc-dict /tmpstr3 50 string dup (Encoding-) exch cvs pop put /AEnc-def { % arguments: the original font's name, encoding nr Enc-dict begin tmpstr2 cvs /Enc-no exch def % Remember the number in a string dup /OrigName exch def % remember the name findfont dup maxlength dict /newdict exch def % get dictionary for new font { exch dup /FID ne { exch newdict 3 1 roll put } { pop pop } % Ignore FID ifelse } forall newdict begin /Encoding tmpstr3 9 Enc-no putinterval tmpstr3 0 9 Enc-no length add getinterval cvn load def % Replace encoding currentdict /UniqueID known { /UniqueID UniqueID Enc-no cvi 49999 mul add def } if % Derive New UniqueID end % newdict /FNlength OrigName tmpstr1 cvs length def % convert name, remember length FNlength 1 add Enc-no length add string dup 0 OrigName tmpstr1 cvs putinterval dup FNlength (-) putinterval dup FNlength 1 add Enc-no putinterval dup 0 tmpstr1 0 FNlength getinterval putinterval % Add old name cvn dup newdict /FontName 3 2 roll put newdict definefont end % Enc-dict } def /Times-Roman 1 AEnc-def pop /R-1{/Times-Roman-1 FF}def /R{/Times-Roman FF}def /B{/Times-Bold FF}def /I{/Times-Italic FF}def %%EndProlog %%Page: 1 1 BP /slant 0 def /height 0 def 480 V 10 R 720(SETBUF)S 1104(\()S 1146(3)S 1204(\))S 2696(Eighth)S (Edition)296 2989 A 4743(SETBUF)S 5127(\()S 5169(3)S 5227(\))S 960 V 9 R 720(N)S 722(NA)S 790(AM)S 858(ME)S 940(E)S 1080 V 10 R 1080(setbuf,)S (setvbuf)296 1376 A 10 R-1 1697(-)S 10 R 1779(assign)S 2055(buffering)S 2455(to)S 2558(a)S 2628(stream)S 1248 V 9 R 720(S)S 722(SY)S 774(YN)S 842(NO)S 910(OP)S 978(PS)S 1030(SI)S 1082(IS)S 1115(S)S 1368 V 10 B 1080(#include)S 1482()S 1608 V 1080(int)S 1236(setbuf\(FILE)S 1807(*)S 10 I 1857(stream)S 10 B 2131(,)S 2194(char)S 2428(*)S 10 I 2478(buf)S 10 B 2606(\))S 1728 V 1080(int)S 1236(setvbuf\(FILE)S 1857(*)S 10 I 1907(stream)S 10 B 2181(,)S 2244(char)S 2478(*)S 10 I 2528(buf)S 10 B 2656(,)S 2719(int)S 10 I 2875(type)S 10 B 3043(,)S 3106(size_t)S 10 I 3385(size)S 10 B 3536(\))S 1896 V 9 R 720(D)S 722(DE)S 790(ES)S 848(SC)S 900(CR)S 962(RI)S 1024(IP)S 1057(PT)S 1109(TI)S 1167(IO)S 1200(ON)S 1268(N)S 2016 V 10 R 1080(The)S 1265(three)S 1495(types)S 1735(of)S 1847(buffering)S 2250(available)S 2642(are)S (unbuffered,)467 2794 A 3289(block)S 3540(buffered,)S 3935(and)S 4108(line)S 4287(buffered.)S 4707(When)S 4975(an)S 5099(out-)S 2136 V 1080(put)S 1247(stream)S 1555(is)S (unbuffered,)467 1661 A 2167(information)S 2681(appears)S 3028(on)S 3167(the)S 3329(destination)S 3809(\256le)S 3977(or)S 4100(terminal)S 4475(as)S (soon)189 4598 A 4825(as)S (written;)314 4947 A 2256 V 1080(when)S 1326(it)S 1410(is)S 1505(block)S 1756(buffered)S 2126(many)S 2377(characters)S 2815(are)S 2968(saved)S 3226(up)S 3355(and)S (written)286 3529 A 3844(as)S 3957(a)S 4031(block;)S 4311(when)S 4558(it)S 4643(is)S 4739(line)S 4919(buffered)S 2376 V 1080(characters)S 1541(are)S 1716(saved)S 1996(up)S (until)184 2147 A 2382(a)S 2478(newline)S 2848(is)S (encountered)492 2965 A 3507(or)S (input)206 3641 A 3897(is)S 4014(read)S 4238(from)S 4484(stdin.)S 10 B 4779(F\257ush)S 10 R 5098(\(see)S 2496 V 10 B 1080(fclose)S 10 R 1321(\(3\)\))S 1503(may)S 1706(be)S 1831(used)S 2045(to)S 2153(force)S 2391(the)S 2544(block)S 2797(out)S 2955(early.)S 3237(Normally)S 3653(all)S 3784(\256les)S 3982(are)S 4136(block)S 4389(buffered.)S 4812(A)S 4916(buffer)S 5194(is)S 2616 V 1080(obtained)S 1455(from)S 10 B 1680(malloc)S 10 R 1965(\(3\))S (upon)200 2112 A 2341(the)S 2493(\256rst)S 10 B 2679(getc)S 10 R 2882(or)S 10 B 2995(putc)S 10 R 3186(\(3\))S 3333(on)S 3462(the)S 3613(\256le.)S 3820(If)S 3916(the)S 4067(standard)S 4436(stream)S 10 B 4733(stdout)S 10 R 5030(refers)S 2736 V 1080(to)S 1183(a)S 1253(terminal)S 1614(it)S 1695(is)S 1787(line)S 1963(buffered.)S 2380(The)S 2562(standard)S 2928(stream)S 10 B (stderr)264 3222 A 10 R 3511(is)S 3603(always)S (unbuffered.)467 3908 A 2904 V 10 B 1080(Setbuf)S 10 R 1386(is)S 1478(used)S 1687(after)S 1898(a)S 1968(stream)S 2262(has)S 2421(been)S 2636(opened)S 2951(but)S 3104(before)S 3387(it)S 3468(is)S 3560(read)S 3759(or)S (written.)311 3868 A 4229(The)S 4411(character)S 4807(array)S 10 I 5040(buf)S 10 R 5194(is)S 3024 V 1080(used)S 1291(instead)S 1603(of)S 1714(an)S 1836(automatically)S 2411(allocated)S 2802(buffer.)S 3126(If)S 10 I 3221(buf)S 10 R 3375(is)S 3468(the)S 3617(constant)S 3978(pointer)S 9 B 4287(NULL)S 9 R 4539(,)S 10 R (input/output)490 4588 A (will)157 5104 A 3144 V 1080(be)S 1200(completely)S (unbuffered.)467 1672 A 2189(A)S 2287(manifest)S 2659(constant)S 9 B 3017(BUFSIZ)S 10 R 3369(tells)S 3562(how)S 3760(big)S 3913(an)S 4033(array)S 4266(is)S 4358(needed:)S 3312 V 10 B 1440(char)S 10 R 1661(buf[BUFSIZ];)S 3480 V 10 B 1080(Setvbuf)S 10 R 1411(,)S 1471(an)S 1601(alternate)S 1984(form)S 2216(of)S 10 B 2336(setbuf)S 10 R 2600(,)S 2661(is)S 2764(used)S 2984(after)S 3206(a)S 3287(stream)S 3592(has)S 3762(been)S 3988(opened)S 4314(but)S 4478(before)S 4772(it)S 4864(is)S 4967(read)S 5177(or)S 3600 V (written.)311 1080 A 1441(It)S 1528(has)S 1687(three)S 1914(uses,)S 2137(depending)S 2580(on)S 2705(the)S 2853(value)S 3096(of)S 3205(the)S 10 I 3353(type)S 10 R 3546(argument:)S 3768 V 10 B 1080(setvbuf\()S 10 I 1428(stream)S 10 B 1702(,)S 10 I 1752(buf)S 10 B 1880(,)S 1930(_IOFBF,)S 10 I 2338(size)S 10 B 2489(\))S 3888 V 10 R 1330(Causes)S (input/output)490 1648 A 2171(to)S 2282(be)S 2410(fully)S 2633(buffered)S 3008(using)S 3259(the)S 3416(character)S 3821(array)S 10 I 4063(buf)S 10 R 4225(whose)S 4516(size)S 4707(is)S 4808(determined)S 4008 V 1330(by)S 1459(the)S 10 I 1610(size)S 10 R 1789(argument.)S 2247(If)S 10 I 2343(buf)S 10 R 2499(is)S 2594(the)S 2745(constant)S 3108(pointer)S 9 B 3419(NULL)S 9 R 3671(,)S 10 R 3722(then)S 3923(an)S 4046(automatically)S 4622(allocated)S 5014(buffer)S 4128 V (will)157 1330 A 1512(be)S 1632(used.)S 4296 V 10 B 1080(setvbuf\()S 10 I 1428(stream)S 10 B 1702(,)S 10 I 1752(buf)S 10 B 1880(,)S 1930(_IOLBF,)S 10 I 2343(size)S 10 B 2494(\))S 4416 V 10 R 1330(Like)S (above,)265 1546 A 1842(except)S 2136(that)S 2319(output)S (will)157 2607 A 2796(be)S 2923(line)S 3106(buffered,)S 3505(i.e.)S 3660(the)S 3815(buffer)S (will)157 4094 A 4283(be)S 4410(\257ushed)S 4732(when)S 4982(a)S 5059(new-)S 4536 V 1330(line)S 1506(is)S (written,)311 1598 A 1934(the)S 2082(buffer)S 2354(is)S 2446(full,)S 2636(or)S (input)206 2745 A 2976(is)S 3068(requested.)S 4704 V 10 B 1080(setvbuf\()S 10 I 1428(stream)S 10 B 1702(,)S 10 I 1752(buf)S 10 B 1880(,)S 1930(_IONBF,)S 10 I 2349(size)S 10 B 2500(\))S 4824 V 10 R 1330(Causes)S (input/output)490 1640 A 2155(to)S 2258(be)S 2378(completely)S (unbuffered.)467 2850 A 10 I 3367(Buf)S 10 R 3532(and)S 10 I 3702(size)S 10 R 3878(are)S (ignored.)332 4027 A 4992 V 1080(A)S 1194(\256le)S 1364(can)S 1546(be)S 1683(changed)S 2060(between)S (unbuffered,)467 2438 A 2947(line)S 3140(buffered,)S 3549(or)S 3675(block)S 3940(buffered)S 4324(by)S 4466(using)S 10 B 4725(freopen)S 10 R 5098(\(see)S 5112 V 10 B 1080(fopen)S 10 R 1321(\(3\)\))S 1498(followed)S 1881(by)S 2006(the)S 2154(appropriate)S 10 B 2638(setvbuf)S 10 R 2977(call.)S 5280 V 9 R 720(S)S 722(SE)S 774(EE)S 832(E)S 913(A)S 915(AL)S 983(LS)S 1041(SO)S 1093(O)S 5400 V 10 B 1080(fopen)S 10 R 1321(\(3\),)S 10 B 1489(getc)S 10 R 1663(\(3\),)S 10 B 1831(putc)S 10 R 2022(\(3\),)S 10 B 2190(malloc)S 10 R 2475(\(3\),)S 10 B 2643(fclose)S 10 R 2884(\(3\),)S 10 B 3052(puts)S 10 R 3237(\(3\),)S 10 B 3405(printf)S 10 R 3658(\(3\),)S 10 B 3826(fread)S 10 R 4056(\(3\).)S 7903 V 720(Page)S 941(1)S 2669(\()S 2711(May)S 2920(12,)S (1986)200 3070 A 3278(\))S 4455(September)S 4911(13,)S (1996)200 5061 A 8143 V EP %%Trailer %%DocumentFonts: Times-Roman Times-Bold Times-Italic %%Pages: 1