Регулярное выражение для соответствия (C) вызовам функций - PullRequest
3 голосов
/ 02 сентября 2008

Есть ли у кого-нибудь регулярное выражение для сопоставления вызовов функций в программах на Си?

Ответы [ 3 ]

3 голосов
/ 02 сентября 2008

Поскольку C не является обычным языком , а вызовы функций C могут содержать произвольные выражения аргументов, я боюсь, что ответ на ваш вопрос «нет».

2 голосов
/ 02 сентября 2008

После еще нескольких поисков я решил позволить компилятору выполнить тяжелую работу.

Получите компилятор для создания файла Register Transfer Language (RTL) , используя параметры -dr команды gcc.

Созданный RTL-файл имеет суффикс .rtl или .expand.

Этот файл гораздо проще разобрать, так как вызовы функций уже определены.

1 голос
/ 02 сентября 2008

Я сомневаюсь, что вы можете найти регулярное выражение, которое соответствует всем (и только) вызовам функций в некотором исходном коде. Но, возможно, вы могли бы использовать инструмент, такой как Understand , или вашу IDE, чтобы просмотреть ваш код.

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