Nel mio programma C++ voglio caricare alcune variabili d'ambiente dalla shell in alcune stringhe. Come si può fare?Come leggere le variabili d'ambiente di Linux in C++
risposta
Utilizzare la funzione getenv() - vedere http://en.cppreference.com/w/cpp/utility/program/getenv. Mi piace per avvolgere in questo modo:
string GetEnv(const string & var) {
const char * val = ::getenv(var.c_str());
if (val == 0) {
return "";
}
else {
return val;
}
}
che evita problemi quando la variabile di ambiente non esiste, e mi permette di usare le stringhe di C++ facilmente per interrogare l'ambiente. Certo, non mi permette di verificare se una variabile d'ambiente non esiste, ma in generale non è un problema nel mio codice.
Come in C: utilizzare getenv (nome variabile).
Si potrebbe semplicemente usare char * env []
int main(int argc, char* argv[], char* env[]){
int i;
for(i=0;env[i]!=NULL;i++)
printf("%s\n",env[i]);
return 0;
}
here è un articolo completo circa il tuo problema, dal mio sito web .
Grazie per aver postato la risposta! Si prega di leggere attentamente le [FAQ sulla promozione di sé] (http://stackoverflow.com/faq#promotion) attentamente. Si noti inoltre che * è * richiesto * di pubblicare un disclaimer ogni volta che si collega al proprio sito/prodotto. –
È "funzione", non "funzione". (Riferendosi al tuo sito web.) Inoltre, il terzo parametro di 'main()' non è standard, e non è garantito che funzioni su tutte le piattaforme/compilatori. – DevSolar
funziona con le variabili di ambiente che vengono esportate/impostate dopo l'avvio del programma? – nurettin
- 1. script bash leggere le variabili di file in variabili locali
- 2. Come impostare le variabili di ambiente Linux con Ansible
- 3. IronPython w/C# - Come leggere i valori di Python variabili
- 4. ASP .NET Nucleo leggere le variabili d'ambiente
- 5. Linux: dove sono memorizzate le variabili d'ambiente?
- 6. Leggere i settori del disco rigido in C++ su Linux
- 7. Come posso far leggere a R le mie variabili ambientali?
- 8. Leggere le proprietà estese dell'immagine in C#
- 9. Come non usare le variabili globali in c
- 10. c leggere le autorizzazioni di un file
- 11. Come leggere il permesso del file linux in modo programmatico in C/C++
- 12. eventi C#: come le variabili sono accessibili
- 13. Laravel 5.2 ottiene le variabili di ambiente del sistema Linux
- 14. C++ sovrapporre le variabili e le variabili mucchio
- 15. ambiguità tra le variabili in C#
- 16. Come leggere le coordinate dello shapefile in C#
- 17. Come leggere le proprietà del file personalizzato in C#
- 18. Come creare e leggere dinamicamente le strutture in C?
- 19. Imposta variabili d'ambiente in C
- 20. C, riguarda le funzioni di argomenti variabili
- 21. Objective-C supporta le variabili di classe?
- 22. Baffi: leggere le variabili dalla sezione genitore nella sezione secondaria
- 23. Leggere gml in C#
- 24. I parametri nascondono le variabili di istanza in Objective-C
- 25. C/C++ Linux MAC Address di tutte le interfacce
- 26. Vim: come utilizzare le variabili in vimrc?
- 27. Come posso leggere/caricare immagini in C++?
- 28. Quale libreria SOAP di linux C/C++? Ho bisogno di raccomandazioni molto leggere
- 29. Come ispezionare le variabili Vim?
- 30. Come leggere le intestazioni di file in Python simili a C?
A volte potresti voler distinguere tra "non impostato" e "vuoto" – sehe
Deve .... rendere ...... il modello ..... basato su .... CharT. Oh aspetta, questo richiede SFINAE. Oh bene. +1 –
potresti usare 'boost :: opzionale' come tipo di ritorno per distinguere tra assenza e vuoto. –