小编tim*_*B33的帖子

strcpy ...想用strcpy_mine替换strncpy和null终止

线索在标题中,但基本上我继承了一些有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;
}
Run Code Online (Sandbox Code Playgroud)

但sizeof总是4 pCopyMe是一个指针

我不想做的就是更换

strcpy (buf, pCopyMe);
Run Code Online (Sandbox Code Playgroud)

strncpy (buf, pCopyMe, sizeof(pCopyMe)); buf[sizeof(pCopyMe)] = 0;
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?(strcpy_l不可用)

干杯

c c++ strcpy

6
推荐指数
2
解决办法
1531
查看次数

标签 统计

c ×1

c++ ×1

strcpy ×1