um die einzelnen Bytes eines Int wertes einzeln auszulesen, möchte ich (schulaufgabe) auf ein Int wert (4 Bytes) einen Char zeiger (1 Byte) verweisen um so die einzelnen Bytes auzulesen.
Dabei geht aber beim typecast von char auf int leider immer etwas schief
C++:
int var; int *ptr1_int; unsigned char* ptr2_char;
ptr1_int = &var;
ptr2_char = (int *) ptr1_int;
C++:
beim void zeiger ist die oben gezeigte konvertierung möglich aber leider nicht in diesem fall. wer hat ne idee wie man bei zeigern castet
Naja,du musst auch nach unsigned char* casten und nicht nach int*. ptr1_int hat diesen Typ ja ohnehin schon. folgendes gibt die Werte der einzelnen Bytes eines int aus.
C++:
#include <iostream> usingnamespace std;
int main() { int value =65537; unsignedchar* alsChar = (unsignedchar*)&value; for(int i=0;i<sizeof(int);i++) cout<<((int)*(alsChar+i))<<endl;
return0; }
MfG Spacelord -- .....Ich mach jetzt nämlich mein Jodeldiplom.Dann hab ich endlich was Eigenes.