Как мне получить имя программы без доступа к argv [0]?

Я знаю, что имя программы передается как первый аргумент, а затем простой пример выведет его на стандартный вывод:

#include <iostream>
int main ( int argc, char *argv[] )
{
  std::cout<<argv[0]<<std::endl;
}

Есть ли функция для получения имени программы?

РЕДАКТИРОВАТЬ

Я запускаю программу из оболочки, и приведенный выше код всегда будет печатать имя программы ( Я использую Fedora 9, но уверен, что она работает и в других дистрибутивах).

Я обнаружил, что каталог / proc / self / может содержать то, что я ищу, но я не смог найти, что именно в этом каталоге.

10
задан MSalters 27 October 2010 в 11:33
поделиться