sure, but with unsafe Rust you have a very clear marking for the section of code that requires additional care and attention. it is also customary to include a "SAFETY" comment outlining why using unsafe is OK here
Rust is bounds checked by default. C is not. Defaults matter because, without a convincing reason, most people program in the default way.