strcpy&strncpy实现

来源:互联网 发布:手机淘宝h5页面签到 编辑:程序博客网 时间:2024/06/15 13:33

strcpy实现

2分实现void strcpy( char *dest, char *src ){  while( (*dest++ = * src++) != '\0' );} 4分实现void strcpy( char *dest, const char *src ) //接口能给调用者传递更多的信息{  while( (*dest++ = *src++) != '\0' );} 7分实现void strcpy(char *dest, const char *src) {  // 加上对传入空指针情况的考虑  assert( (dest != NULL) && (src != NULL) );  while( (*dest++ = * src++) != '\0' );} 10分实现//返回地址可实现链式操作char * strcpy( char *dest, const char *src ) {  assert( (dest != NULL) && (src != NULL) );  char *address = dest;   while( (*dest++ = *src++) != '\0' );    return address;} 

strncpy实现

char* strncpy(char* dest, const char* src, size_t n) {    size_t i = 0;    while (i < n && src[i] != '\0')        dest[i] = src[i++];    while (i < n)        dest[i++] = '\0';    return dest;}
用数组索引比用指针运行更容易理解

原创粉丝点击