реклама на сайте
подробности

 
 
> [WinAVR][C++] Что за префиксы в обьектных файлах, напр. "_ZL1....." ?
kurtis
сообщение Sep 15 2008, 16:13
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 466
Регистрация: 21-06-05
Пользователь №: 6 205



Доброе время суток! smile.gif
Прошу прощения за немного неадекватное название темы....

Возникла небольшая непонятность!
В составе WinAVR-XXXXXX есть замечательная утилита avr-nm, с помощью которой можно "вытащить" символические имена из объектных файлов с указанием их адресов. Но на выходе я получаю что-то вроде такого
Код
......................
00000479 t _ZL10no_iic_str
00000484 t _ZL11no_arch_str
0000048f t _ZL11message_str
......................
или такого
Код
......................
00001f9e t _GLOBAL__I_sec_tik
00001fcc T _ZN2OS7processILNS_9TPriorityE5ELt150EE4ExecEv
000020b0 T _ZN2OS7processILNS_9TPriorityE4ELt150EE4ExecEv
......................


Т.е. меня лично смущают префиксы в названиях переменных, вроде _ZN2, _ZL10 или _GLOBAL__I. Они могут быть произвольными, эти я привел только для примера. Не ко всем переменным приписывается такой префикс.
Я так понимаю что это какая-то служебная информация или что-то вроде того. Только мне не понятно что она значит и как я ее могу использовать, возможно кто-то сможет прояснить ситуацию по этому поводу???
Заранее спасибо! a14.gif
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 1)
Сергей Борщ
сообщение Sep 15 2008, 23:10
Сообщение #2


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(kurtis @ Sep 15 2008, 19:13) *
Не ко всем переменным приписывается такой префикс.
Да. Таким образом реализуется переопределение имен (name mangling) в C++. Ищите в опциях nm что-нибудь связанное с Demangle. У objdump есть для этого ключ -C.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 27th July 2025 - 07:54
Рейтинг@Mail.ru


Страница сгенерированна за 0.01347 секунд с 7
ELECTRONIX ©2004-2016