localeconv
From cppreference.com
                    
                                        
                    
                    
                                                            
                    |   Defined in header  <locale.h>
  | 
||
|   struct lconv *localeconv(void);  | 
||
The localeconv function obtains a pointer to a static object of type lconv, which represents numeric and monetary formatting rules of the current C locale.
Parameters
(none)
Return value
pointer to the current lconv object.
Notes
Modifying the object references through the returned pointer is undefined behavior.
localeconv modifies a static object, calling it from different threads without synchronization is undefined behavior.
Example
Run this code
#include <stdio.h> #include <locale.h> int main(void) { setlocale(LC_MONETARY, "en_IN.utf8"); struct lconv *lc = localeconv(); printf("Local Currency Symbol : %s\n", lc->currency_symbol); printf("International Currency Symbol: %s\n", lc->int_curr_symbol); }
Output:
Local Currency Symbol : ₹ International Currency Symbol: INR
References
- C11 standard (ISO/IEC 9899:2011):
 
- 7.11.2.1 The localeconv function (p: 225-230)
 
- C99 standard (ISO/IEC 9899:1999):
 
- 7.11.2.1 The localeconv function (p: 206-211)
 
- C89/C90 standard (ISO/IEC 9899:1990):
 
- 4.4.2.1 The localeconv function
 
See also
|    gets and sets the current C locale  (function)  | |
|   formatting details, returned by localeconv  (struct)  | |
|   C++ documentation for localeconv 
 | |