FreeCalypso > hg > freecalypso-tools
annotate target-utils/libc/strncat.c @ 582:deda54106c0e
doc/Target-boot-control: first draft
| author | Mychaela Falconia <falcon@freecalypso.org> | 
|---|---|
| date | Mon, 03 Feb 2020 01:25:31 +0000 | 
| parents | 7fb62fc724dc | 
| children | 
| rev | line source | 
|---|---|
| 87 
7fb62fc724dc
target-utils/libc: beginning of newlib-ectomy
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1 /* | 
| 
7fb62fc724dc
target-utils/libc: beginning of newlib-ectomy
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2 * Concatenate s2 on the end of s1. S1's space must be large enough. | 
| 
7fb62fc724dc
target-utils/libc: beginning of newlib-ectomy
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 3 * At most n characters are moved. | 
| 
7fb62fc724dc
target-utils/libc: beginning of newlib-ectomy
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 4 * Return s1. | 
| 
7fb62fc724dc
target-utils/libc: beginning of newlib-ectomy
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 5 */ | 
| 
7fb62fc724dc
target-utils/libc: beginning of newlib-ectomy
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 6 | 
| 
7fb62fc724dc
target-utils/libc: beginning of newlib-ectomy
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 7 char * | 
| 
7fb62fc724dc
target-utils/libc: beginning of newlib-ectomy
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 8 strncat(s1, s2, n) | 
| 
7fb62fc724dc
target-utils/libc: beginning of newlib-ectomy
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 9 register char *s1, *s2; | 
| 
7fb62fc724dc
target-utils/libc: beginning of newlib-ectomy
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 10 register n; | 
| 
7fb62fc724dc
target-utils/libc: beginning of newlib-ectomy
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 11 { | 
| 
7fb62fc724dc
target-utils/libc: beginning of newlib-ectomy
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 12 register char *os1; | 
| 
7fb62fc724dc
target-utils/libc: beginning of newlib-ectomy
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 13 | 
| 
7fb62fc724dc
target-utils/libc: beginning of newlib-ectomy
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 14 os1 = s1; | 
| 
7fb62fc724dc
target-utils/libc: beginning of newlib-ectomy
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 15 while (*s1++) | 
| 
7fb62fc724dc
target-utils/libc: beginning of newlib-ectomy
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 16 ; | 
| 
7fb62fc724dc
target-utils/libc: beginning of newlib-ectomy
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 17 --s1; | 
| 
7fb62fc724dc
target-utils/libc: beginning of newlib-ectomy
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 18 while (*s1++ = *s2++) | 
| 
7fb62fc724dc
target-utils/libc: beginning of newlib-ectomy
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 19 if (--n < 0) { | 
| 
7fb62fc724dc
target-utils/libc: beginning of newlib-ectomy
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 20 *--s1 = '\0'; | 
| 
7fb62fc724dc
target-utils/libc: beginning of newlib-ectomy
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 21 break; | 
| 
7fb62fc724dc
target-utils/libc: beginning of newlib-ectomy
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 22 } | 
| 
7fb62fc724dc
target-utils/libc: beginning of newlib-ectomy
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 23 return(os1); | 
| 
7fb62fc724dc
target-utils/libc: beginning of newlib-ectomy
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 24 } | 
