Вот код для перечисления всех переменных среды.
#include <iostream>
#include <cstdlib>
int main (int argc, char *argv[], char *envp[]) {
char **p = nullptr;
p = envp;
while (*p) {
std::cout << *p << std::endl;
p++;
}
return 0;
}
Я упоминал более раннюю публикацию о печати всех переменных среды в C / C ++ . Однако он не отвечает на мой запрос.
Как написать приведенный выше код на идиоматическом языке c C ++ 14 / C ++ 17? Любые указатели?
обновить 1 исправленный код (сообщение с предложением Alex)
ПРИМЕЧАНИЕ: это будет not , поскольку envp
не является контейнером.
#include <iostream>
int main (int argc, char *argv[], char *envp[]) {
for (auto it = std::begin(envp); it != std::end(envp); ++it) {
std::cout << *it << std::endl;
}
return 0;
}