Я новичок в этом, и после большого разочарования у меня наконец-то хватило смелости спросить всех вас, настоящих профессионалов.
Мне нужно сохранить все знаки процента (%), которые я получаю от LPCTSTR, когда копирую их в LPTSTR. После некоторых исследований и попыток я пришел с этим:
LPCTSTR lpRemapping; // Contains a string with percents (%) in it
size_t nSize = _tcsclen(lpRemapping) + 1;
LPTSTR lpBuffer = new TCHAR[nSize];
errno_t nResult = _tcsncpy_s(lpBuffer, nSize, lpRemapping, ((size_t)-1));
for (int currentChar = 0; currentChar < nSize; currentChar++) {
if (lpRemapping[currentChar] == '%') {
lpBuffer[currentChar] = '%%';
}
}
Но, похоже, я все еще теряю знаки процента в процессе. Я прочитал много ответов, подсказывающих мне использовать %%, но я делаю что-то не так и не знаю, что это.
Я не контролирую полученную строку, и некоторые из них обязательно будут содержать знак процента (%).
Я очень ценю ваше время и надеюсь, что вы сможете пролить свет на этот вопрос.
Задача ещё не решена.
Других решений пока нет …