线索在标题中,但基本上我继承了一些包含 800 多个 strcpy 实例的代码。我想写一个新函数,然后用 strcpy_mine 替换 strcpy。
所以我试图弄清楚 strcpy_mine 将有什么参数列表。
我试过:
void strcpy_mine( char* pTarget, const char* const pCopyMe )
{
const unsigned int lenAlwaysFour = sizeof(pCopyMe ); //:(
strncpy( pTarget, pCopyMe, lenAlwaysFour );
//add extra terminator in case of overrun
pTarget[lenAlwaysFour] = 0;
}
但 sizeof 始终为 4 pCopyMe 是一个指针
我不想做的是替换
strcpy (buf, pCopyMe);
和
strncpy (buf, pCopyMe, sizeof(pCopyMe)); buf[sizeof(pCopyMe)] = 0;
有任何想法吗?(strcpy_l 不可用)