stpcpy(3) - wariua/manpages-ko GitHub Wiki
stpcpy - ๋ฌธ์์ด์ ๋ณต์ฌํ๊ณ ๊ทธ ๋์ ๋ํ ํฌ์ธํฐ ๋ฐํํ๊ธฐ
#include <string.h>
char *stpcpy(char *dest, const char *src);
glibc ๊ธฐ๋ฅ ํ์ธ ๋งคํฌ๋ก ์๊ฑด (feature_test_macros(7) ์ฐธ๊ณ ):
-
stpcpy()
: -
- glibc 2.10๋ถํฐ:
_POSIX_C_SOURCE >= 200809L
- glibc 2.10 ์ :
_GNU_SOURCE
stpcpy()
ํจ์๋ src
๊ฐ ๊ฐ๋ฆฌํค๋ ๋ฌธ์์ด์ (์ข
๋ฃ์ฉ ๋ ๋ฐ์ดํธ('\0'
)๋ฅผ ํฌํจํด) dest
๊ฐ ๊ฐ๋ฆฌํค๋ ๋ฐฐ์ด๋ก ๋ณต์ฌํ๋ค. ๋ ๋ฌธ์์ด์ด ๊ฒน์น ์ ์์ผ๋ฉฐ ๋์ ๋ฌธ์์ด dest
๊ฐ ๋ณต์ฌ๋ฅผ ๋ฐ์๋ค์ผ ๋งํผ ์ปค์ผ ํ๋ค.
stpcpy()
๋ ๋ฌธ์์ด dest
์ ์์์ด ์๋๋ผ ๋์ ๋ํ ํฌ์ธํฐ๋ฅผ (์ฆ, ์ข
๋ฃ์ฉ ๋ ๋ฐ์ดํธ์ ์ฃผ์๋ฅผ) ๋ฐํํ๋ค.
์ด ์ ์์ ์ฌ์ฉํ๋ ์ฉ์ด๋ค์ ๋ํ ์ค๋ช ์ attributes(7)๋ฅผ ๋ณด๋ผ.
์ธํฐํ์ด์ค | ์์ฑ | ๊ฐ |
---|---|---|
stpcpy() |
์ค๋ ๋ ์์ ์ฑ | MT-Safe |
์ด ํจ์๋ POSIX.1-2008์ ์ถ๊ฐ๋์๋ค. ๊ทธ ์ ์๋ C๋ POSIX.1 ํ์ค์ ์ผ๋ถ๊ฐ ์๋์๊ณ ์ ๋์ค ์์คํ ์ ํต์ ์๋ ๊ฒ๋ ์๋์๋ค. ์ฒ์ ๋ฑ์ฅํ ๊ฒ์ ๋ฆ์ด๋ 1986๋ ์ Lattice C Amiga-DOS ์ปดํ์ผ๋ฌ์์์์ผ๋ฉฐ, ์ดํ 1989๋ ์ GNU fileutils์ GNU textutils์, ๊ทธ๋ฆฌ๊ณ 1992๋ ์ GNU C ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๋ฑ์ฅํ๋ค. BSD ๊ณ์ด์๋ ์๋ค.
์ด ํจ์๋ ๋ฒํผ dest
๋ฅผ ๋์น๊ฒ ํ ์ ์๋ค.
์๋ฅผ ๋ค์ด ์ด ํ๋ก๊ทธ๋จ์ stpcpy()
์ผ๋ก foo์ bar๋ฅผ ์ด์ด ๋ถ์ฌ์ foobar๋ฅผ ๋ง๋ค์ด ๋ธ ๋ค์ ์ถ๋ ฅํ๋ค.
#define _GNU_SOURCE
#include <string.h>
#include <stdio.h>
int
main(void)
{
char buffer[20];
char *to = buffer;
to = stpcpy(to, "foo");
to = stpcpy(to, "bar");
printf("%s\n", buffer);
}
bcopy(3)
, memccpy(3), memcpy(3)
, memmove(3)
, stpncpy(3), strcpy(3)
, string(3), wcpcpy(3)
2019-03-06