Einzelnen Beitrag anzeigen

Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#1

[C] Zeichenfolge aus Funktion zurückgeben

  Alt 13. Sep 2006, 10:57
Folgender Code:
Code:
#include <stdio.h>
#include <windows.h>


TCHAR* SysErrorMessage(int ErrorCode) {
   TCHAR szBuf[80];
    LPVOID lpMsgBuf;
    DWORD dw = GetLastError();

    FormatMessage(
        FORMAT_MESSAGE_ALLOCATE_BUFFER | 
        FORMAT_MESSAGE_FROM_SYSTEM,
        NULL,
        dw,
        MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
        (LPTSTR) &lpMsgBuf,
        0, NULL );

   wsprintf(szBuf, (LPTSTR)lpMsgBuf);
   LocalFree(lpMsgBuf);
   return szBuf;    
}

int main(int argc, char* argv[])
{
   printf(SysErrorMessage(5));
   return 0;
}
Leider gelingt es mir nicht eine ganz normale Zeichenfolge beliebiger Länmge aus der Funktion zurückzugeben, so dass ich sie mit printf ausgeben kann.

Zusatzaufgabe: Wie mache ich das ganze Unicode sicher?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat