Как узнать имя функции и переменные в ней?

Тема в разделе "WASM.BEGINNERS", создана пользователем newb, 26 мар 2009.

  1. newb

    newb New Member

    Публикаций:
    0
    Регистрация:
    4 июн 2008
    Сообщения:
    39
    Скажем есть .EXE программы,
    условно эта программа:
    Код (Text):
    1. #include <iostream>
    2.  
    3. using namespace std;
    4.  
    5. void foo(char *a);
    6.  
    7. int main(int argv, char *argc){
    8.     char *word = "hello";
    9.     foo(word);
    10.     cin.get();
    11.     return 0;
    12. }
    13.  
    14. void foo(char *a){
    15.     cout << a << endl;
    16. }
    Ну в принципе вопрос. Как не зная исходного кода узнать, что в нём существует такая функция: "foo", что она не возвращает значений ("void"), и т.д..

    Через деббагер кручу-верчу: результата 0, помогите...

    По возможности сделайте туториал плиз. Спасибо.
     
  2. integer

    integer New Member

    Публикаций:
    0
    Регистрация:
    2 янв 2007
    Сообщения:
    62
    названия функций в сконпелированом бинарнике не сохраняются. только адрес функции указывается. например вызов функции в отладчике может выглядеть как "call 401015"
     
  3. MSoft

    MSoft New Member

    Публикаций:
    0
    Регистрация:
    16 дек 2006
    Сообщения:
    2.854
    разве что у тебя есть отладочные символы или отладочная информация в файле. Иначе все превращается только в цифры, никаких имен
     
  4. Partner

    Partner Павел

    Публикаций:
    0
    Регистрация:
    28 фев 2008
    Сообщения:
    917
    Адрес:
    Los Angeles
    Еще можно узнать из заголовочного файла. :)
     
  5. Pavia

    Pavia Well-Known Member

    Публикаций:
    0
    Регистрация:
    17 июн 2003
    Сообщения:
    2.409
    Адрес:
    Fryazino
    Еще имя сохроняется в секции экспорта если такая имеется.