2010-02-25 12 views

Respuesta

1

Clang al menos puede hacer esto, pero podría no ser la manera más fácil. Tendrá que interactuar con la API de C++.

3

Nuestra DMS Software Reengineering Toolkit es una herramienta de análisis de programa personalizable con una calidad de producción C Front End.

Analiza C, crea AST y tablas de símbolos, proporciona control y análisis de flujo de datos, y construye gráficos de llamadas globales, y tiene puntos de análisis. Se puede personalizar para extraer esta información; de hecho, entregamos una herramienta personalizada basada en DMS a un gran fabricante de vehículos para construir una herramienta para extraer casi exactamente esta información.

Si se limita a la información de la tabla de símbolos, puede extraer "directamente lee o escribe" como en su ejemplo. Si usa la información del gráfico de llamadas, puede descubrir lecturas o escrituras en globales causadas por llamadas a otras funciones. Si utiliza el análisis de puntos a puntos, puede descubrir (conservativamente) lecturas o escrituras en variables globales a través de la indirección.

+0

El segundo enlace es incorrecta. – Patrick

+0

Segundo enlace reparado. Gracias. –

+0

¿Puede mostrar el acceso global var en tiempo de ejecución? –

2

Usted puede tratar también CppDepend, la NDepend como para C \ C++

Cuestiones relacionadas