Как я могу напечатать имена переменных, которые используются в программе C - PullRequest
1 голос
/ 25 июня 2009

Я хочу напечатать переменные, которые используются в моем C-коде. Это файл размером 19 КБ, поэтому в нем используется много переменных.

я знаю, что это не так просто ... потому что мы не знаем, где мой компилятор помещает эти детали .. (отладочная информация? ..)

Я работаю в GCC (Redhat (Shrike)) ..

Renjith G

Ответы [ 5 ]

2 голосов
/ 25 июня 2009

Запустите ctags на ваших источниках, затем прочитайте файл выходных тегов.

Это будет список всех видимых идентификаторов (и, возможно, статических идентификаторов, в зависимости от параметров ctags), файлов, в которых они определены, и местоположения в файле.

Это не индексирует локальные переменные.

1 голос
/ 25 июня 2009

Вы можете запустить регулярное выражение, подобное этому, в исходном коде:

(const *)? *(int|double|float|char) *(const *)? *(\* *)*(const *)? *;

Не будет перехватывать определенные пользователем типы, но если код достаточно короткий, вы можете добавить соответствующие типы вручную.

Редактировать: забыл; в конце

1 голос
/ 25 июня 2009

Может быть, вы имеете в виду что-то вроде команду linux nm , в которой перечислены символы из объектного файла.

0 голосов
/ 25 июня 2009

Вы можете скомпилировать и проверить исполняемый файл. проверьте тип файла, если это elf, то вы можете использовать "readelf --symbols --wide myfile" и grep для OBJECT.

0 голосов
/ 25 июня 2009

Вы можете использовать кнопку «Печать» на клавиатуре. Убедитесь, что принтер подключен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...