64,683
社区成员
发帖
与我相关
我的任务
分享
password_digest* passwordDigest = new password_digest;
pdg->get_created(passwordDigest);
函数实现:
int CPasswordDigestGenerator::get_created(struct password_digest* &pdi)
{
password_digest* pd_return = new password_digest;
time_t now = time(NULL);
time_t expires = now + 10;
struct tm T, *pT = &T;
char dest[1024] = "";
if ((pT = gmtime(&now)))
{
strftime(dest, 1024, "%Y-%m-%dT%H:%M:%SZ", pT);
pd_return->created = dest;
if ((pT = gmtime(&expires)))
{
char dest_1[1024] = "";
strftime(dest_1, 1024, "%Y-%m-%dT%H:%M:%SZ", pT);
pd_return->expires = dest_1;
}
}
memcpy(&pdi, &pd_return, sizeof(password_digest));//这步运行后直接在delete的位置阻塞。。
//strcpy(pdi->expires, pd_return->expires);//
//strcpy(pdi->created, pd_return->created);//这两步运行出错。。。
delete(&pd_return);
return GENERATE_OK;
}
password_digest get_password_digest(struct password_digest & pdi)
{
password_digest pd_return;
......
char * temp = ".........................";
pd_return.a = temp;
strcpy(pdi.a, pd_return.a);
strcpy(pdi.b, pd_return.b);
strcpy(pdi.c, pd_return.c);
return temp;
}