C or C++ : Dangerous pointer manipulation