Эта функция существует в OS X и позволяет передавать пользовательские локальные функции. setlocale не является потокобезопасным и передает языковой стандарт в качестве параметра.
Если нет эквивалента, любой способ независимого от локали printf или printf только для double (% g) будет в порядке.