Highbyte und Lowbyte eines wide chars beschreiben



  • Halli Hallo,

    ich möchte einen char string in einen Widechar string konvertieren.
    Zueerst hab ich es mit der Fkt mbstowcs() versucht was bei mir auch wunderbar funktionierte nur leider auf dem Testrechner dann vom tester wirft die gute Funktion wohl einen Fehler was darin endet dass das Programm mit einem "Das Programm hat einen Fehler verursacht..." abstürzt.
    Weis da einer wieso ?

    Ich wollte jetzt mir selber so eine Funktion basteln und hatte eigentlich gehofft das des net alzu schwer sein dürfte. aber so kann man sich irren ^^

    meine Idee war zuerst einen char String zu machen und da jedes Zeichen einzeln reinschreiben wobei an 2ter Stelle nach jedem Zeichen immer eine 0 kommt und das dann auf ein widechar kopieren.. hat leider nicht funktioniert da die 0 ja das stringendekennzeichen ist ^^

    Jetzt wollte ich fragen ob jemand einen guten Weg wüsste wie man sowas anstellen könnte oder eben wie man bei einem wide char einzeln auf das Highbyte und das Lowbyte schreibt dann könnt ichs ja wieder mit ner for()-Schleife machen.

    wäre wirklich um jeden Tipp oder Denkanstoss dankbar

    greetz sand13r



  • Arbeitest du mit dem "MKS Toolkit"? Unabhängig davon solltest du die Runtime Libs auf deinem Testsystem installieren bzw. mitgeben. Solche Fehler, wie du es beschrieben hast, lassen darauf schließen das der Anwendung bei der Ausführung Bibliotheken fehlen in denen, in der Anwendung, verwendete Funktionen implementiert sind.



  • das hab ich auch erst gedacht als er das gesgat hat.. aber anscheinend hat er alles installiert 😞 komisch nur das es bei mir geht .. son käyse..

    das mit dem low und highbyte beschreiben hab ich nun so gelöst(dank arbeitskollegen^^)

    wchar_t theChar[500];
    char *pBytePtr = (char*) & theChar;
    
    int len=_mbslen(pcharin);
    
    int y=0;
    for(int i =0;i<len;i++)
    {
    	pBytePtr[y]=pcharin[i];
    	pBytePtr[y+1]=0;
    	y+= 2;
    }
    pBytePtr[y]=0;
    pBytePtr[y+1]=0;
    

    jetzt stürzt das programm immernoch ab aber anscheinend an einer anderen stelle 😞



  • sand13r schrieb:

    jetzt stürzt das programm immernoch ab aber anscheinend an einer anderen stelle 😞

    benutz mal einen Debugger


Log in to reply