Aiming the reduction of commercial systems` time to the market, standardized hardware, as microcontrollers and embedded microprocessors, has been broadly employed for critical applications, transferring to the software issues that once exclusively relied on the hardware design. Defensive programming techniques are preventive engines against hardware and software faults. In order to verify the safety of critical application systems, fault injection techniques were developed, allowing for the testing of fault tolerant techniques under conditions quite close to actual operational environments. The introduction of defensive programming techniques increases the safety of critical application systems. There are no references, on a large research base, on quantitative evaluations of defensive programming techniques. This thesis describes an experimental work towards a relative quantitative evaluation, organized in a few stages. First, some defensive programming techniques are shown, characterized and selected as the evaluation target. Following, fault injection techniques are described and one of them is selected as the agent of the experimental work. From this point on, the defensive programming techniques are verified under the fault injection technique chosen. The result is a relative quantitative evaluation on the efficiency of some defensive programming techniques on the unsafe fault tolerance capacity of critical application systems. Finally, indications for further work are presented. The railway environment, where the author works, was employed as a case study. However, the reasoning and the conclusions of this thesis are applicable to any critical mission system.