W pewnym tutorialu natrafiłem na zapis:
dataPos = *(int*)&(header[0x0A]);
imageSize = *(int*)&(header[0x22]);
width = *(int*)&(header[0x12]);
height = *(int*)&(header[0x16]);
I pomyślałem, czy nie można zastąpić tego zapisem:
dataPos = header[10];
imageSize = header[34];
width = header[18];
height = header[22];
Nie wiem czy dobrze rozumiem działanie systemu wskaźników, więc chciałbym zapytać się, czy mam dobry tok myślenia:
1. Start: "*(int*)&(header[10])"
2. Operator "&" zwraca adres do "header[10]".
3. "(int*)" tworzy czasowy wskaźnik przechowujący adres "&header[10]".
4. Operator "*" zwraca wartość zapisaną pod adresem "(int*)&(header[10])".
5. Na końcu otrzymuję wartość "header[10]".