У меня нет знаний о C++, и мне нужно свернуть код на C#. Мне удалось сделать несколько бит, но я не совсем понимаю, как преобразовать несколько строк, поэтому я здесь прошу помощи.C++ wchar array to C#
Это C++ код:
WCHAR wsSerial[MAX_PATH]={'\0'};
WCHAR wsS2[MAX_PATH]={'\0'};
wcscpy_s(wsSerial, MAX_PATH, m_strSerial);
wcscpy_s(wsS2,MAX_PATH,wsSerial+8);
wsS2[8]=NULL;
ULONG ulCode2 = wcstoul(wsS2, NULL,10);
Это то, что я имею в C#:
string wsSerial;
string wsS2;
wsSerial = mSerial; //an external input
wsS2 = wsSerial + 8;
wsS2= wsSerial.Substring(0, 8);
long ulCode2 = long.Parse(wsS2);
Поэтому у меня есть два вопроса:
- wsSerial представляет собой массив в C++ но мне не нужен массив для этого в C#, не так ли? Я имею в виду, все, что он делает, это хранить большое количество, которое позже преобразуется в числовое значение, верно?
- Что именно это делает? wcscpy_s (WSS2, MAX_PATH, wsSerial + 8). + 8 отбрасывает меня.
на самом деле, в коде C ОП завершаю, что после 8-символа, так что длина должна быть 8. –
Нет, оригинал добавление 8 к указателю источника, так что начиная копия 8 символов. –
Да, но посмотрите на следующую строку источника. –