Funzione libreria C - setlocale ()
Descrizione
La funzione di libreria C. char *setlocale(int category, const char *locale) imposta o legge le informazioni dipendenti dalla posizione.
Dichiarazione
Di seguito è riportata la dichiarazione per la funzione setlocale ().
char *setlocale(int category, const char *locale)
Parametri
category - Questa è una costante con nome che specifica la categoria delle funzioni influenzate dall'impostazione locale.
LC_ALL per tutto quanto segue.
LC_COLLATEper il confronto delle stringhe. Vedere strcoll ().
LC_CTYPEper la classificazione e la conversione dei caratteri. Ad esempio - strtoupper ().
LC_MONETARY per la formattazione monetaria per localeconv ().
LC_NUMERIC per separatore decimale per localeconv ().
LC_TIME per la formattazione di data e ora con strftime ().
LC_MESSAGES per le risposte del sistema.
locale - Se la locale è NULL o la stringa vuota "", i nomi delle impostazioni locali verranno impostati dai valori delle variabili di ambiente con gli stessi nomi delle categorie precedenti.
Valore di ritorno
Una chiamata riuscita a setlocale () restituisce una stringa opaca che corrisponde al set locale. Il valore restituito è NULL se la richiesta non può essere soddisfatta.
Esempio
L'esempio seguente mostra l'utilizzo della funzione setlocale ().
#include <locale.h>
#include <stdio.h>
#include <time.h>
int main () {
time_t currtime;
struct tm *timer;
char buffer[80];
time( &currtime );
timer = localtime( &currtime );
printf("Locale is: %s\n", setlocale(LC_ALL, "en_GB"));
strftime(buffer,80,"%c", timer );
printf("Date is: %s\n", buffer);
printf("Locale is: %s\n", setlocale(LC_ALL, "de_DE"));
strftime(buffer,80,"%c", timer );
printf("Date is: %s\n", buffer);
return(0);
}
Compiliamo ed eseguiamo il programma sopra che produrrà il seguente risultato:
Locale is: en_GB
Date is: Fri 05 Dec 2014 10:35:02 UTC
Locale is: de_DE
Date is: Fr 05 Dez 2014 10:35:02 UTC