first of all, good job on trying to map your knowledge, that’s a good way of making progress. these points that I’m quoting are not correct and as you improve your understanding you will be able to amend them and reach a sound conclusion
a const pointer is a pointer that doesn’t allow you to write the memory it points to. you can create const pointers for both const data and mutable data, but you can’t create a non-const pointer to const data
var a: usize = 1;
const b: usize = 2;
const a_const_ptr: *const usize = &a;
const b_const_ptr: *const usize = &b;
const a_ptr: *usize = &a;
const b_ptr: *usize = &b; // won't compile because `b` is declared const, so nobody can mutate it
a_ptr.* = 5; // ok
a_const_ptr.* = 5; // won't compile because a const pointer (ie a pointer of type `*const T`) doesn't let you write to the memory it points to (even if the original declaration was `var`)
var another_ptr: *const usize = &a;
another_ptr = &b; // the variable that holds the pointer can be mutated (because of `var`) so we can put in there a different pointer, but no matter which pointer value we set it to, we won't be able to write through it because the type of the pointer is `*const usize`
var more_ptr: *usize = &a;
more_ptr = &b; // won't compile: since `b` is a const variable, we can't create pointers to it that allow you to mutate it.
Hopefully this should help.