0

我有结构

NewStruct1
{
  uint factor;
  NewStruct2 assert[3];
  char name[21];

}

和另一个

NewStruct2 
{
  uint newFactor;
  char newName[21];
}

这里我在一个dll中调用一个函数'func',如下

NewStruct1 var;

func(&var);

功能是

func(NewStruct1 *v)
{
  std::string myName = "werttt";
  strcpy_s(v->assert[0].newName, myName.size(), myName.c_str());
}

这样做虽然有足够的空间来容纳strcpy_s(L"Buffer is too small" && 0)任何机构都可以帮助我吗?

4

1 回答 1

3

的第二个参数strcpy_s必须是destination中的元素数,即21(in 中的字符数newName),而不是source 的长度。

于 2012-08-01T06:51:50.037 回答