У меня есть структура, которая представляет собой массив LPSTR и определяются как так:Копировать массив LPTSTR
struct MyStruct {
DWORD cbString;
LPTSTR * pbString;
}
Мне нужно скопировать эту структуру на другую идентичную структуру. Мой вопрос: как распределить память для целевой структуры? Моим первым инстинктом было бы следующее:
destStruct.pbString = (LPTSTR*)malloc(totalSizeOfSrcStrings * sizeof(TCHAR))
for(int i = 0; i < srcStruct.cbString; i++) {
destStruct.pbString[i] = (LPTSTR)malloc(_tcslen(srcStruct.pbString[i] * sizeof(TCHAR));
}
Я не уверен, нужен ли код в цикле for.
Что такое 'LPSTR'? – kraskevich
Насколько я помню, это должно быть 'char *', поэтому sizeof (TCHAR) должен быть sizeof (CHAR) – marcinj
Длинный указатель на строку. Определено (Microsoft) как массив из 8 бит символов. –