Integer in Char[] konvertieren mit itoa(...) ...



  • Hi,

    icjh hab da ein Problem

    [...]
    
    	static HWND		hwndEditX,
    			        hwndEditY;
    	switch (message)
    	{
    	case WM_INITDIALOG:
    
    		TCHAR	szEditX[5],
    			szEditY[5];
    
    		hwndEditX = GetDlgItem (hDlg, IDC_EDIT1);
    		hwndEditY = GetDlgItem (hDlg, IDC_EDIT2);
    
    		itoa (ixBitmap, szEditX, 10);
    		itoa (ixBitmap, szEditY, 10);
    
    		SetWindowText (hwndEditX, ixBitmap == 0 ? TEXT("32") : szEditX);
    		SetWindowText (hwndEditY, ixBitmap == 0 ? TEXT("32") : szEditY);
    
    [...]
    

    Der Programmausschnit soll eigentlich die beiden Edit-Boxen des Dialoges mit ixBitmap und iyBitmap füllen (falls ixBitmap oder iyBitmap gleich 0, soll 32 eingesetzt werden).

    Mein Compiler schmeist mir dazu zweimal folgene Fehlemeldung heraus:

    error C2664: 'itoa' : cannot convert parameter 2 from 'TCHAR [5]' to 'char *'
            Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
    

    mit diesem cast-Operator habe ich es schon versucht, da kam aber nur Müll raus...

    I Need Help!

    Und ich benutzte das Microsoft Visual Studio 2005 (<- ist das evtl. zu "neu" für itoa() ?) und Windoof Xp Home Sp2

    Danke 😃



  • Du solltest die passende TCHAR-Variante verwenden:
    Siehe Docu zu itoa:
    => _itoa
    => _itot


Anmelden zum Antworten