Da ich mir nicht ganz sicher bin, ob man dieser Funktion vertrauen kann wollte ich
hier mal nachfragen.. Simuliert wird auf einem 32-Bit i386er.
Kann man dieser Funktion vertrauen? ^^
hier mal nachfragen.. Simuliert wird auf einem 32-Bit i386er.
Code: [Auswählen]
void* memset(void *ptr, uint32 value, size_t bytes)
{
if(bytes < 1)
return 0;
uint32 *pt = (uint32*) ptr;
// Last two bytes are going to be lost after the bit shift
uint32 carry = bytes & 0x3;
// Integer division by 4
bytes >>= 2;
while(bytes) {
*pt = value;
pt++;
bytes--;
}
if(carry) {
pt++;
*pt = value;
}
return ptr;
}
Kann man dieser Funktion vertrauen? ^^

Übersicht
Wiki
Hilfe
Suche
Einloggen
Registrieren
Drucken

Gespeichert




*angst hab'*