Как можно читать числа с помощью sscanf сбои?

Cppcheck обнаружил потенциальную проблему в коде, подобном этому:

float a, b, c;
int count = sscanf(data, "%f,%f,%f", &a, &b, &c);

Это говорит о том, что: «scanf без ограничений ширины поля может потерпеть крах с огромными данными». Как это возможно? Это известная ошибка в некоторых реализациях sscanf? Я понимаю, что числа могут переполняться (численно), но как программа может аварийно завершить работу? Это ложный положительный результат в cppcheck?

Я нашел похожий вопрос:scanf Cppcheck предупреждение, но ответ не совсем удовлетворительный. Ответ упоминает безопасность типа, но это не должно быть проблемой здесь.

Ответы на вопрос(3)

Ваш ответ на вопрос