C++ 개발자는 많지 않으며 문자열을 처리하는 여러 방법으로 인해 항상 혼란 스럽습니다.void *를 CString으로 변환하는 방법
int Mine_SSL_Read(SSL* ssl, void* buf, int size)
{
int length = Real_SSL_Read(ssl, buf, size);
CString msg = ???
}
그러나 나는 SSL_Read 기능 (OpenSSL을)에 대한 후크를 작성해야하고 어떤 C++ 코드가 필요합니다. 나는 void 타입 인 buf를 변환해야하고 CString에 "length"길이를 가지고 있으므로 다른 코드에서 파싱 할 수 있습니다. 당신은 reinterpret_cast
를 사용하여 시도 할 수 있습니다
'void *'의 예상 내용은 무엇입니까? 이것은 단지 ASCII 또는 UNICODE 문자의 버퍼입니까? 'NULL'이 종료 되었습니까? – Chad
그것은 ASCII 문자이며 null로 끝납니다 (OpenSSL 문서가 끔찍한 것임을 알리는 한). 귀하의 솔루션이 두 가지 경우 모두를 처리 할 때 답변이 주어집니다. –