Any systems programming language has them.
However there is a difference between having them as an addition to strong type features and them being the only way to program in the language.
For example, using arrays and strings didn't require pointer arithmetic.
In C all unsafe features are in thr face of the programmer. There is no way to avoid them.
In Mesa and other similar languages, those unsafe are there, but programmers only need to use them in a few cases.
C was designed with PDP-11 instruction set in mind. For many years that the C machine model no longer maps to the hardware as many think it does.
Any systems programming language has them.
However there is a difference between having them as an addition to strong type features and them being the only way to program in the language.
For example, using arrays and strings didn't require pointer arithmetic.
In C all unsafe features are in thr face of the programmer. There is no way to avoid them.
In Mesa and other similar languages, those unsafe are there, but programmers only need to use them in a few cases.
C was designed with PDP-11 instruction set in mind. For many years that the C machine model no longer maps to the hardware as many think it does.