MISRA Discussion Forums

Full Version: <cstdio> explicitly banned but not <fstream> or <ostream>
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Rule 27-0-1 specifically bans the use of library for access to the external file system but not . Do we imply from this that is a safer alternative, or is it considered inherently unsafe, in any case, for application code to access the file system at run-time.

This question is asked in the context that the real-time software for our vehicle-based military project may be required to read configuration parameters from file at start-up, and log telemetry data during run-time.

It is also noted that std::cout () is used in the example code for Rule 3.4.1., whereas printf would be banned under Rule 27-0-1.
As I understand may be used as long as dynamic heap memory allocation is avoided (18-4-1), and the library is reliable, see "3.5 Library Issues".
We agree with the post of sthrjo Fri Jan 21, 2011