Лучший подход к анализу файлов * .c / *. H с использованием C # для объявлений и определений типов данных - PullRequest
1 голос
/ 08 ноября 2008

Мне нужно проанализировать .c / .h файлы для объявления данных и извлечь объявления типа. Например, мне может потребоваться извлечь объявление переменной и соответствующий ей тип данных, который может выглядеть следующим образом:

typedef union 
{
  struct
  {
    unsigned char   OG15 : 1,
                    ...
                    OG0  : 1;
  } Bits;
  unsigned short Packed;

} OUTPUT_DESCRIPTOR;


OUTPUT_DESCRIPTOR DiscreteWord1;

Так что мои вопросы будут (с использованием C #):

  1. Как лучше всего хранить информацию о типе данных?
  2. Каков наилучший подход к анализу исходных файлов для извлечения объявлений и типов данных?

Thx

Mark

1 Ответ

1 голос
/ 09 ноября 2008

Не уверен, что это лучший подход, но я могу предложить два рабочих подхода:

  1. Используйте Phoenix SDK для написания прохода компилятора, который записывает эту информацию.
  2. Скомпилируйте код с помощью обычного компилятора C, запросите файл PDB, затем используйте DIA API для чтения определений структуры данных из файлов PDB.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...