Pracuję z plikami 4-5 .c (od 2000 do 5000 linii każdy), które zawierają kilka nagłówków . Obecnie nie mam żadnych wydruków debugowania, które pomogłyby mi w debugowaniu programu w trakcie realizacji.Automatyczne drukowanie struktur i zmiennych w C
Moje pytanie brzmi: - Czy istnieje sposób (lub jakieś istniejące narzędzie) do analizy plików .c i dodania nowego zestawu instrukcji drukowania dla wszystkich zmiennych w bieżącym zakresie w pliku .c? Tak samo, jak w przypadku VC++ pozwala nam zobaczyć Lokale i globale itp. Potrzebuję ich wydrukować na każdym kroku. Ponadto, należy usunąć dereferencje wskaźników .
Na przykład. powiedzmy w jednym miejscu pliku .c, jest 10 zmiennych globalnych i 3 locals. Potrzebuję wygenerować inteligentne printfs, aby wydrukować te 13 zmiennych w tym punkcie. Później w program, jeśli jest 20 zmiennych, powinienem móc wydrukować 20 zmiennych itp. Dołączone pliki nagłówkowe zawierają wszystkie odpowiednie deklaracje dla każdej z tych zmiennych
(które mogą być strukturami/wskaźnikami/tablicami lub niektórymi kombinacje etcetera itp.) Próbowałem osiągnąć to poprzez skrypt Perla.
Co zrobiłem w tym, że wygenerowany plik (przed obróbką .i plik) i starałem parsowania go za pomocą Perl a następnie wygenerować indywidualne funkcje drukowania specyficzne dla każdej zmiennej, ale po wysiłku pół dniach zdałem sobie sprawę, że jego po prostu zbyt czasochłonne. Czy istnieje narzędzie, które już to robi? Jeśli nie to, wszystko blisko powinno być dobre wystarczy (na które mogę zastosować trochę przetwarzania perl itp.) Moim celem jest, aby po wykonaniu programu, na każdym kroku podczas wykonywania programu, powinienem być w stanie zobaczyć zmienne (ważne w tym zakresie) bez konieczności wywoływania debuggera.
Mam pozwolenie na przetwarzanie plików .c i ponowne ich zapisywanie itp. Itp. Mam nadzieję, że moje pytanie jest jasne i dziękuję za twoje odpowiedzi.
.. również możesz uzyskać odpowiedź. BTW Słyszałeś paragrafy? –
jak wybrać najlepszą odpowiedź? –
Kliknij na znacznik wyboru obok niego, powinien on zmienić kolor z szarego na zielony – Fingolfin