关于strcpy函数的问题

重复贴和参考价值不大的帖子,版主维护
回复
huangyingw
帖子: 53
注册时间: 2008-03-05 21:42
送出感谢: 0
接收感谢: 0

关于strcpy函数的问题

#1

帖子 huangyingw » 2008-12-29 23:21

以下是其源代码,那个__ptrlow函数是在哪定义的?我搜遍了整个glibc都没找到其实现,望高手赐教
# define CHECK_BOUNDS_LOW(ARG) \
(((__ptrvalue (ARG) < __ptrlow (ARG)) && BOUNDS_VIOLATED), \
__ptrvalue (ARG))


char *
strcpy (
char *dest,
const char *src
)
{
reg_char c;
char *__unbounded s = (char *__unbounded) CHECK_BOUNDS_LOW (src);
const ptrdiff_t off = CHECK_BOUNDS_LOW (dest) - s - 1;
size_t n;

do
{
c = *s++;
s[off] = c;
}
while (c != '\0');

n = s - src;
(void) CHECK_BOUNDS_HIGH (src + n);
(void) CHECK_BOUNDS_HIGH (dest + n);

return dest;
}
回复

回到 “归档贴”