Я работаю в проекте с использованием openframeworks, и в последнее время у меня были некоторые проблемы при написании XML. Я отследил проблему до спринта:
Кажется, что при определенных условиях вызов sprintf может писать запятые вместо точек на числах с плавающей запятой (например, «2,56» вместо «2,56»). В моей локали числа с плавающей запятой представлены знаком ',', чтобы отделить десятичные дроби от единиц.
Я не могу воспроизвести это поведение в простом примере, но я решил эту проблему, приведя строковое значение к строковому значению.
Мне любопытно узнать, почему sprintf использует другую локализацию. Когда sprintf использует «,» вместо «.» и как это контролировать?