69,375
社区成员
发帖
与我相关
我的任务
分享
/*** vc7.1下的源代码
*strncpy.c - copy at most n characters of string
*************************************************************/
#include <cruntime.h>
#include <string.h>
char * __cdecl strncpy (
char * dest,
const char * source,
size_t count
)
{
char *start = dest;
while (count && (*dest++ = *source++)) /**//* copy string */
count--;
if (count)
/**//* pad out with zeroes */
while (--count)
*dest++ = '\0 ';
return(start);
}
/*******************************************************************************
* copy n characters in string src to dst.
******************************************************************************/
char *strncpy(char *dst, const char *src, size_t n)
{
char *p = dst;
while (n-- && (*dst++ = *src++))
;
return p;
}
int main()
{
char* s = "hello world";
char d[5];
j1_strncpy(d, s, sizeof(d));
cout<<d<<endl;
return 0;
}
把
end=dest+n;
改成
end=dest+n-1;