a void* can contain a float* without any troubles? (yh, maybe the compiler knows how to handle this, but i want to learn how to do it correctly)
yea, a pointer can contain every other type of pointer, becaues its internally just 32/64 bit reference. So it doesnt contain data, it just points to it.


if i initialise a void* p; on startup, does p always stay a void* or is this possible = (int *)p; to cast the variable itself to another pointer-type? (same with normal types: int i = 1; i = (float)i
not possible, but if you need the value of a variable as another type, just cast it. ^^


i assume on here that (int *)&i == &i am i correct?
yep

and if so, thn on my first example (float *)&x == &x means, &x still is a float* and thn there is no need for doing a cast b4?
also correct, you are comparing the same types there