%!PS-Adobe-1.0 %%Creator: devps (Pipeline Associates, Inc.) %%CreationDate: Fri Sep 13 13:07:00 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(STRING)S 1093(\()S 1135(3)S 1193(\))S 2696(Eighth)S (Edition)296 2989 A 4754(STRING)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(string,)S 1367(strcat,)S 1644(strncat,)S 1971(strcmp,)S 2303(strncmp,)S 2685(strcpy,)S 2989(strncpy,)S 3344(strlen,)S 3627(index,)S 3909(rindex)S 10 R-1 4200(-)S 10 R 4291(string)S 4554(operations)S 5007(string,)S 1200 V 1080(strcat,)S 1371(strncat,)S 1712(strcmp,)S 2058(strncmp,)S 2454(strcpy,)S 2772(strncpy,)S 3140(strlen,)S 3436(strchr,)S 3738(strrchr,)S 4074(strerror,)S 4444(memcmp,)S 4890(memcpy,)S 1320 V 1080(memmove,)S 1554(memchr,)S 1934(memset,)S 2297(index,)S 2570(rindex)S 10 R-1 2852(-)S 10 R 2934(string)S 3188(operations)S 1488 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 1608 V 10 B 1080(#include)S 1482()S 1728 V 1080(#include)S 1482()S 1968 V 1080(char)S 1314(*strcat\(char)S 1879(*)S 10 I 1929(s1)S 10 B 2018(,)S 2081(const)S 2343(char)S 2577(*)S 10 I 2627(s2)S 10 B 2716(\))S 2088 V 1080(char)S 1314(*strncat\(char)S 1935(*)S 10 I 1985(s1)S 10 B 2074(,)S 2137(const)S 2399(char)S 2633(*)S 10 I 2683(s2)S 10 B 2772(,)S 2835(size_t)S 10 I 3114(n)S 10 B 3164(\))S 2208 V 1080(int)S 1236(strcmp\(const)S 1835(char)S 2069(*)S 10 I 2119(s1)S 10 B 2208(,)S 2271(const)S 2533(char)S 2767(*)S 10 I 2817(s2)S 10 B 2906(\))S 2328 V 1080(int)S 1236(strncmp\(const)S 1891(char)S 2125(*)S 10 I 2175(s1)S 10 B 2264(,)S 2327(const)S 2589(char)S 2823(*)S 10 I 2873(s2)S 10 B 2962(,)S 3025(size_t)S 10 I 3304(n)S 10 B 3354(\))S 2448 V 1080(char)S 1314(*strcpy\(char)S 1901(*)S 10 I 1951(s1)S 10 B 2040(,)S 2103(const)S 2365(char)S 2599(*)S 10 I 2649(s2)S 10 B 2738(\))S 2568 V 1080(char)S 1314(*strncpy\(char)S 1957(*)S 10 I 2007(s1)S 10 B 2096(,)S 2159(const)S 2421(char)S 2655(*)S 10 I 2705(s2)S 10 B 2794(,)S 2857(size_t)S 10 I 3136(n)S 10 B 3186(\))S 2688 V 1080(size_t)S 1359(strlen\(const)S 1902(char)S 2136(*)S 10 I 2186(s)S 10 B 2225(\))S 2808 V 1080(char)S 1314(*strchr\(const)S 1924(char)S 2158(*)S 10 I 2208(s)S 10 B 2247(,)S 2310(int)S 10 I 2466(c)S 10 B 2511(\))S 2928 V 1080(char)S (*strrchr\(const)617 1314 A 1969(char)S 2203(*)S 10 I 2253(s)S 10 B 2292(,)S 2355(int)S 10 I 2511(c)S 10 B 2556(\))S 3048 V 1080(char)S (*strerror\(int)550 1314 A 10 I 1902(errnum)S 10 B 2198(\))S 3168 V 1080(int)S 1236(memcmp\(const)S 1930(void)S 2152(*)S 10 I 2202(s1)S 10 B 2291(,)S 2354(const)S 2616(void)S 2838(*)S 10 I 2888(s2)S 10 B 2977(,)S 3040(size_t)S 10 I 3319(n)S 10 B 3369(\))S 3288 V 1080(void)S 1302(*memcpy\(void)S 1972(*)S 10 I 2022(s1)S 10 B 2111(,)S 2174(const)S 2436(void)S 2658(*)S 10 I 2708(s2)S 10 B 2797(,)S 2860(size_t)S 10 I 3139(n)S 10 B 3189(\))S 3408 V 1080(void)S 1302(*memmove\(void)S 2050(*)S 10 I 2100(s1)S 10 B 2189(,)S 2252(const)S 2514(void)S 2736(*)S 10 I 2786(s2)S 10 B 2875(,)S 2938(size_t)S 10 I 3217(n)S 10 B 3267(\))S 3528 V 1080(void)S 1302(*memchr\(const)S 2007(void)S 2229(*)S 10 I 2279(s)S 10 B 2318(,)S 2381(int)S 10 I 2537(c)S 10 B 2582(,)S 2645(size_t)S 10 I 2924(n)S 10 B 2974(\))S 3648 V 1080(void)S 1302(*memset\(void)S 1939(*)S 10 I 1989(s)S 10 B 2028(,)S 2091(int)S 10 I 2247(c)S 10 B 2292(,)S 2355(size_t)S 10 I 2634(n)S 10 B 2684(\))S 3768 V 1080(char)S 1314(*index\(const)S 1895(char)S 2129(*)S 10 I 2179(s)S 10 B 2218(,)S 2281(int)S 10 I 2437(c)S 10 B 2482(\))S 3888 V 1080(char)S 1314(*rindex\(const)S 1940(char)S 2174(*)S 10 I 2224(s)S 10 B 2263(,)S 2326(int)S 10 I 2482(c)S 10 B 2527(\))S 4056 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 4176 V 10 R 1080(These)S 1355(functions)S 1763(operate)S 2094(on)S 2228(null-terminated)S 2883(strings.)S 3235(They)S 3476(do)S 3610(not)S 3772(check)S 4041(for)S 4194(over\257ow)S 4587(of)S 4706(any)S (receiving)375 4886 A 4296 V 1080(string.)S 4464 V 10 B 1080(Strcat)S 10 R 1375(appends)S 1735(a)S (copy)195 1811 A 2037(of)S 2152(string)S 10 I 2412(s2)S 10 R 2532(to)S 2641(the)S 2795(end)S 2971(of)S 3086(string)S 10 I 3346(s1)S 10 R 3443(.)S 10 B 3524(Strncat)S 10 R 3875(copies)S 4163(at)S 4267(most)S 10 I 4493(n)S 10 R 4574(characters.)S 5066(Both)S 4584 V 1080(return)S 1346(a)S 1416(pointer)S 1726(to)S 1829(the)S 1977(null-terminated)S 2623(result.)S 4752 V 10 B 1080(Strcmp)S 10 R 1430(compares)S 1846(its)S 1971(arguments)S 2420(and)S 2595(returns)S 2905(an)S 3030(integer)S 3340(greater)S 3651(than,)S 3879(equal)S 4127(to,)S 4260(or)S 4374(less)S 4555(than)S 4758(0,)S (according)397 4864 A 4872 V 1080(as)S 10 I 1193(s1)S 10 R 1311(is)S 1407(lexicographically)S 2135(greater)S 2445(than,)S 2672(equal)S 2919(to,)S 3050(or)S 3162(less)S 3341(than)S 10 I 3542(s2)S 10 R 3639(.)S 10 B 3717(Strncmp)S 10 R 4121(makes)S 4406(the)S 4557(same)S 4792(comparison)S 4992 V 1080(but)S (looks)217 1233 A 1475(at)S 1573(at)S 1671(most)S 10 I 1891(n)S 10 R 1966(characters.)S 5160 V 10 B 1080(Strcpy)S 10 R 1391(copies)S 1673(string)S 10 I 1927(s2)S 10 R 2041(to)S 10 I 2144(s1)S 10 R 2241(,)S (stopping)345 2291 A 2661(after)S 2872(the)S 3020(null)S 3201(character)S 3597(has)S 3756(been)S 3971(moved.)S 10 B 4319(Strncpy)S 10 R 4687(copies)S 4970(exactly)S 5280 V 10 I 1080(n)S 10 R 1157(characters,)S 1619(truncating)S 2054(or)S 2165(null-padding)S 10 I 2704(s2;)S 10 R 2853(the)S 3002(target)S 3258(may)S 3457(not)S 3611(be)S 3732(null-terminated)S 4379(if)S 4467(the)S 4616(length)S 4893(of)S 10 I 5003(s2)S 10 R 5118(is)S 10 I 5211(n)S 5400 V 10 R 1080(or)S 1189(more.)S 1471(Both)S 1691(return)S 10 I 1957(s1)S 10 R 2054(.)S 5568 V 10 B 1080(Strlen)S 10 R 1369(returns)S 1674(the)S 1822(number)S 2154(of)S (non-null)340 2263 A 2628(characters)S 3063(in)S 10 I 3166(s)S 10 R 3213(.)S 5736 V 10 B 1080(Strchr)S 10 R 1386(\()S 10 B (strrchr)309 1420 A 10 R 1729(\))S 1788(returns)S 2093(a)S 2163(pointer)S 2473(to)S 2576(the)S 2724(\256rst)S 2906(\(last\))S 3139(occurrence)S 3607(of)S 3716(character)S 10 I 4112(c)S 10 R 4182(in)S 4285(string)S 10 I 4539(s,)S 10 R 4628(or)S 4737(null)S 4918(if)S 10 I 5006(c)S 10 R 5077(does)S 5856 V 1080(not)S 1233(occur)S 1482(in)S 1585(the)S 1733(string.)S 6024 V 10 B (Strerror)365 1080 A 10 R 1470(returns)S 1775(the)S 1923(error)S 2145(string)S 2399(for)S 2542(the)S 2690(system)S 2994(call)S 3165(error)S 10 I 3387(errnum)S 10 R 3691(.)S 3766(See)S 10 B 3937(intro)S 10 R 4150(\(2\).)S 6192 V 10 B 1080(Memcmp)S 10 R 1524(is)S 1626(like)S 10 B 1812(strcmp)S 10 R 2150(except)S 2448(that)S 2634(the)S 2792(strings)S 3096(are)S 3256(memory)S 3627(blocks)S 3925(of)S 4045(length)S 10 I 4332(n)S 10 R 4390(.)S 4476(Null)S 4691(characters)S 5137(are)S 6312 V 1080(treated)S 1380(as)S 1489(ordinary)S 1855(characters.)S 6480 V 10 B 1080(Memcpy)S 10 R 1487(copies)S 10 I 1776(n)S 10 R 1858(bytes)S 2102(from)S 2330(the)S 2485(location)S 2841(pointed)S 3174(to)S 3284(by)S 10 I 3416(s2)S 10 R 3537(to)S 10 I 3647(s1)S 10 R 3744(.)S 10 B 3826(Memmove)S 10 R 4311(is)S 4410(like)S 4594(memcpy,)S 4998(except)S 6600 V 1080(that)S 1256(it)S 1337(can)S 1502(handle)S 1795(overlap)S 2122(between)S 2483(the)S 2631(two)S 2807(strings.)S 3150(Both)S 3370(functions)S 3769(return)S 10 I 4035(s1)S 10 R 4132(.)S 6768 V 10 B 1080(Memchr)S 10 R 1477(returns)S 1784(a)S 1856(pointer)S 2168(to)S 2273(the)S 2423(\256rst)S 2607(occurrence)S 3077(of)S 3188(character)S 10 I 3586(c)S 10 R 3658(in)S 3763(string)S 10 I 4019(s,)S 10 R 4110(or)S 4221(null)S 4404(if)S 10 I 4493(c)S 10 R 4565(does)S 4776(not)S 4931(occur)S 5183(in)S 6888 V 1080(the)S 1228(string.)S 7056 V 10 B 1080(Memset)S 10 R 1447(sets)S 10 I 1623(n)S 10 R 1698(bytes)S 1935(to)S 10 I 2038(c)S 10 R 2108(starting)S 2435(at)S 2533(location)S 10 I 2882(s)S 10 R 2929(.)S 3004(It)S 3091(returns)S 10 I 3396(s)S 10 R 3443(.)S 7224 V 10 B 1080(Index)S 10 R 1351(and)S 10 B 1521(rindex)S 10 R 1826(are)S 1975(obsolete)S 2335(versions)S 2695(of)S 10 B 2804(strchr)S 10 R 3093(and)S 10 B (strrchr)309 3263 A 10 R 3572(.)S 3647(New)S 3863(code)S (should)267 4078 A 4370(avoid)S 4618(using)S 4860(them.)S 7392 V 9 R 720(N)S 722(NO)S 790(OT)S 858(TE)S 916(ES)S 974(S)S 7512 V 10 R 1080(Characters)S 1537(are)S 1686(compared)S 2108(as)S 10 B 2217(unsigned)S 2628(char)S 10 R 2824(,)S 2874(whether)S 10 B 3224(char)S 10 R 3445(itself)S 3672(is)S 3764(signed)S 4051(or)S 4160(not.)S 7903 V 720(Page)S 941(1)S 2669(\()S 2711(May)S 2920(15,)S (1985)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