C ++ нет подходящей функции для вызова 'strlcpy' - PullRequest
0 голосов
/ 04 мая 2020

У меня проблема с моим кодом.

void CInputMain::GetWhisperDetails(LPCHARACTER ch, const char * c_pData)
{
    TPacketCGGetWhisperDetails* p = (TPacketCGGetWhisperDetails *) c_pData;

    if (!*p->szName)
        return;

    TPacketGCGetWhisperDetails p2;
    p2.header = HEADER_GC_WHISPER_DETAILS;
    strlcpy(p2.szName, p->szName, sizeof(p2.szName));

    LPCHARACTER pkChr = CHARACTER_MANAGER::instance().FindPC(p->szName);
    if (pkChr && pkChr->IsPC())
    {
        p2.bOnline = 1;
        strlcpy(p2.szLanguage, pkChr->GetLanguage(), sizeof(p2.szLanguage));
        strlcpy(p2.bEmpire, pkChr->GetEmpire(), sizeof(p2.bEmpire));
    }
    else
    {
        p2.bOnline = 0;
        strlcpy(p2.szLanguage, "en", sizeof(p2.szLanguage));
        strlcpy(p2.bEmpire, 1, sizeof(p2.bEmpire));
    }
    ch->GetDesc()->Packet(&p2, sizeof(p2));
}   

Ошибка:

strlcpy(p2.szLanguage, pkChr->GetLanguage(), sizeof(p2.szLanguage));

strlcpy(p2.bEmpire, pkChr->GetEmpire(), sizeof(p2.bEmpire));

 no matching function for call to 'strlcpy'

Я надеюсь, что вы можете помочь мне

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...