自个儿写一个函数,实现字符串的拷贝 用纯C写
自己写一个函数,实现字符串的拷贝 用纯C写
自己写一个函数,实现字符串的拷贝 不用C++
------解决方案--------------------
char * __cdecl strcpy(char * dst, const char * src)
{
char * cp = dst;
while( *cp++ = *src++ )
; /* Copy src over dst */
return( dst );
}
------解决方案--------------------
写一个,没测试。。
自己写一个函数,实现字符串的拷贝 不用C++
------解决方案--------------------
char * __cdecl strcpy(char * dst, const char * src)
{
char * cp = dst;
while( *cp++ = *src++ )
; /* Copy src over dst */
return( dst );
}
------解决方案--------------------
写一个,没测试。。
- C/C++ code
myMemCopy(char *dest, char *source, int size) { int longNum = 0; int shortNum = 0; int charNum = 0; longNum = size / 4; shor5Num = (size % 4) / 2; charNum = size % 2; // 4字节Copy for(int iCnt = 0; iCnt < longNum; iCnt++) { *(long *)dest = *(long *)source; source = source + 4; dest = dest + 4; } // 剩余2字节copy for(int iCnt = 0; iCnt < shortNum; iCnt++) { *(short *)dest = *(short *)source; source = source + 2; dest = dest + 2; } // 剩余1字节Copy for(int iCnt = 0; iCnt < charNum; iCnt++) { *(short *)dest = *(short *)source; source = source + 1; dest = dest + 1; } }
------解决方案--------------------
最简单的。
char *copy(char *to,const char *from)
{
while (*to++=*from++);
return to;
}
------解决方案--------------------
呵呵,这多像网上出的面试题啊!
------解决方案--------------------
- C/C++ code
1.得分最低的 void * strcpy(char *dest, const char *src) { while(*dest++ = *src++); } 2.好一点的 char * strcpy(char *dest,const char *src) { char * temp; temp = dest; while(*dest++ = *src++); return temp; } 3可以接受的 char * strcpy(char *dest,const char *src) { assert( dest != src); assert( dest != NULL || src != NULL); char *temp = dest; while(*dest++ = *src++); return temp; }
------解决方案--------------------
------解决方案--------------------
------解决方案--------------------
都觉得面熟。
------解决方案--------------------
见过了,面试题
------解决方案--------------------
- C/C++ code
char * strcpy(char *dest,const char *src) { char * temp; temp = dest; while(*dest++ = *src++) ; return temp; }