Casten - String to DWORD



  • Hallo,

    wie kann ich einen String in ein DWORD casten? DWORD ist ja unsigned, hab aber nur atol gefunden das für signed 4 Byte Typen ist 😕



  • hab mal was zusammengefrickelt. konnte es aber nicht testen, da nur notepad hier...

    DWORD StrToDWORD(const char* ptr) 
    {
    	DWORD dwResult = 0;
    	for ( int shift = 0; shift < 7 * 5; shift += 5 ) 
    	{
    		char c = *ptr++;
    
    		if ( ! isBase32(c) ) 
    			return 0;
    
    		dwResult |= ((c<'A') ? (c-'4') : (6+(c-'A'))) << shift;
    	}
    	return dwResult;
    }
    


  • Danke, das sieht ziemlich kompliziert aus. 😮
    Aber ich hab grade gemerkt dass atol auch unsigned werte ungeschnitten umwandelt 🕶


Anmelden zum Antworten