These functions require the programmer to define the sizes of the buffer being written to.

If the function detects that the output buffer is too small, then it will, depending on the settings/implementation:
* Halt the program and clearly explain what the problem is.
* Throw an exception (not supported in Lite-C).
* Or simply return an error, and then the programmer can handle it manually without aborting the program.
* A callback function can be used in the event of any of the above.

In all cases, the bad buffer write does not occur.

Interestingly, the git project has banned all uses of strcpy(), strcat(), and sprintf() using a header:
https://github.com/git/git/blob/master/banned.h

Background: I just had to scrub one of my trading systems clean because it was crashing under mysterious circumstances. After much work, the bug disappeared for reasons unknown.

Murphy's Law: Things that can go wrong will go wrong. It's better to try to get things right the first time around.

[Linked Image]

Attached Files developers_projects.jpg