Tengo un código fuente muy grande en C++ (escrito usando plantillas estándar). Necesito entender que es flujo de control. Su punto de entrada es la función main()
pero dentro de main()
llama a tantas funciones (lo que a su vez llama a otras funciones) por lo que me resulta muy difícil hacer un seguimiento de lo que ocurre. Estoy usando eclipse para navegar entre archivos y realizar un seguimiento, pero aún así es difícil de administrar ya que contiene alrededor de 100 archivos .c
y .h
. ¿Hay alguna herramienta que pueda crear una jerarquía de llamadas a partir de main()? Aunque tengo 100 archivos, sé que solo usa alrededor de 35 archivos. Estoy en Linux. ¿Puede GCC ayudarme con esto?Herramienta para crear la jerarquía de llamadas de la biblioteca
5
A
Respuesta
6
Lista de herramientas que puede utilizar: http://en.wikipedia.org/wiki/Call_graph
prefiero Doxygen: http://www.stack.nl/~dimitri/doxygen/
Un ejemplo de gráfico de llamadas doxygen de http://www-scf.usc.edu/~peterchd/doxygen/:
Cuestiones relacionadas
- 1. Atajo de Intellij para la jerarquía de llamadas rápidas
- 2. Ocultar pruebas de unidades de la jerarquía de llamadas
- 3. ¿Cómo veo la ventana de Jerarquía de llamadas?
- 4. ¿Utilidades para crear una jerarquía de bloqueo?
- 5. Jerarquía de llamadas IntelliJ de los campos
- 6. Obteniendo una jerarquía de llamadas en java
- 7. Jerarquía de llamadas al método Ruby
- 8. generan gráfico de llamadas jerarquía con ctags
- 9. Anotación JAXB para la jerarquía de clases
- 10. ¿Ruby proporciona un método para mostrar las llamadas de jerarquía?
- 11. GWT para crear la utilidad biblioteca de JavaScript
- 12. ¿Existe alguna función en Emacs para la jerarquía de llamadas de función
- 13. LINQ: ¿Podemos crear una lista plana de la jerarquía
- 14. ¿Herramienta para alinear automáticamente llamadas de funciones de JavaScript?
- 15. Razones para la estructura de la jerarquía de excepción estándar
- 16. Mejor herramienta para crear MSI
- 17. ¿Cuál es la biblioteca de facto para crear Python Daemons?
- 18. Filtrar la "Jerarquía de llamadas abiertas" de Eclipse a solo mi empresa/proyecto
- 19. ¿Cuál es la mejor herramienta para crear archivos XSL?
- 20. Herramienta o biblioteca para comparar archivos xml
- 21. En Eclipse, en la jerarquía de llamadas, ¿forma de expandir todo?
- 22. Crear un archivo de jerarquía usando perl
- 23. ¿Cómo puedo configurar la jerarquía de mi proyecto en QtCreator?
- 24. ¿La mejor herramienta para visualizar ontologías?
- 25. librería javascript para la construcción de la jerarquía del árbol de nodos
- 26. DUnit prueba la jerarquía
- 27. crear herramienta de impulso ejecutable
- 28. ¿Herramienta para crear contenedores .NET para una DLL COM?
- 29. Biblioteca para registrar la Pila de llamadas en tiempo de ejecución (Windows/Linux)
- 30. Realización de llamadas anidadas para "ejecutar" con la biblioteca Fabric de Python
cheque doxygen, debe tener diagramas de llamadas . – PiotrNycz
Sus declaraciones '# include' deben dar cierta información. Y puede intentar dejar algunos archivos de objetos fuera del ejecutable; si el enlazador no se queja, esos archivos son innecesarios. – Beta