Я использую«ExuberantCtags», также известный как«Ctags -e», также известный как просто«ETags»Понимание `Ctags Отформатируйте -e` File (Ctags для Emacs)
, и я пытаюсь понять TAGS, который генерируется командой etags, в частности, я хочу понять строку # 2 файла TAGS.
Wikipedia says, что линия # 2 описываются так:
{src_file},{size_of_tag_definition_data_in_bytes}
С практической точки зрения, хотя TAGS файл строка: 2 для "foo.c" выглядит следующим образом
foo.c,1683
Мои затруднительным является как точно он находит это число: 1683
Я знаю, что это размер «tag_definition», поэтому я хочу знать, что такое «tag_definition»?
Я пробовал посмотреть ctags source code, но, возможно, кто-то лучше на C, чем у меня, будет больше успеха, выясняя это.
Спасибо!
EDIT # 2:
^L^J
hello.c,79^J
float foo (float x) {^?foo^A3,20^J
float bar() {^?bar^A7,59^J
int main() {^?main^A11,91^J
Хорошо, так что, если я правильно понимаю, "79" относится к числу байтов в файле TAGS от после 79 до и включая "91^J".
Идеальный смысл.
Теперь цифры 20, 59, 91 в данном примере википедия говорит, что относится к {} byte_offset
Что такое {} byte_offset смещенной?
Спасибо за помощь!
Спасибо, но теперь у меня есть другой вопрос, но я поставлю его на главный пост. –
Большое спасибо за помощь, это имеет смысл сейчас, но что такое {bytes_offset}? Я обновил редактирование до главного сообщения. –