-
Path: news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.wp.pl!not-for-mail
From: Adam Dybkowski <a...@4...pl>
Newsgroups: pl.misc.elektronika
Subject: Re: AVR-GCC - sterowanie kompilacją
Date: Wed, 01 Apr 2009 22:23:37 +0200
Organization: Wirtualna Polska S.A. http://www.wp.pl
Lines: 35
Sender: a...@a...neoplus.adsl.tpnet.pl
Message-ID: <gr0ig6$ddr$1@news.wp.pl>
References: <gqtr0t$8be$1@inews.gazeta.pl> <gr08f5$j6p$1@inews.gazeta.pl>
NNTP-Posting-Host: aelc226.neoplus.adsl.tpnet.pl
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: 8bit
X-Trace: news.wp.pl 1238617414 13755 79.191.28.226 (1 Apr 2009 20:23:34 GMT)
X-Complaints-To: a...@w...pl
NNTP-Posting-Date: Wed, 1 Apr 2009 20:23:34 +0000 (UTC)
X-Organization-Notice: Organization line has been filtered
In-Reply-To: <gr08f5$j6p$1@inews.gazeta.pl>
User-Agent: Thunderbird 2.0.0.21 (Windows/20090302)
X-Original-Organization: Wirtualna Polska S.A. http://www.wp.pl
Xref: news-archive.icm.edu.pl pl.misc.elektronika:560933
[ ukryj nagłówki ]pawel pisze:
>> Mam w kodzie kilkanaście funkcji printf z różną ilością argumentów, jak
>> można je hurtowo włączyć lub wyłączyć przy kompilacji.
>
> Ja to robię tak
> #ifdef DEBUG
> #define DEBUG_PRINT(arg) printf arg
> #define DEBUG_PRINT_P(arg) printf_P arg
> #else
> #define DEBUG_PRINT(arg)
> #define DEBUG_PRINT_P(arg)
> #endif
>
> i zamiast funkcji printf używam np: DEBUG_PRINT(("blabla%dblabla", i));
Ja używam w tym celu makra DBG_P - jest krócej napisać. I nie wymaga
podwójnych nawiasów ale wygląda raczej tak:
DBG_P(printf("BLABLA%d",i);)
Daje to możliwość opcjonalnego wyłączania też innych kawałków kodu, nie
tylko funkcji printf.
Ale rzeczywiście to "super wygodne" rozwiązanie nijak się ma do nakładu
pracy z przerobieniem masy gotowego napisanego wcześniej kodu. :-| Gdy
się od razu tak nie pisało "debugów". W takim przypadku proponuję
zlinkować z programem własną funkcję printf i będzie po kłopocie. A
debugowanie można sobie wtedy dynamicznie włączać i wyłączać, np. na
podstawie jakiejś zmiennej (jest to możliwe bo teksty będą obecne cały
czas w pamięci programu).
--
Adam Dybkowski
http://dybkowski.net/
Uwaga: przed wysłaniem do mnie maila usuń cyfry z adresu.
Następne wpisy z tego wątku
- 02.04.09 10:20 tomi
Najnowsze wątki z tej grupy
- Nowy akumulator Donut Lab
- Pilot do zamka/bramy
- Jaka myjka ultradźwiękowa?
- Retro organizer ale współcześnie
- Skąd diody LED 1,5V?
- Apollo Comm
- PICkit3 mnie pokonał
- LEDy na choinkę zdechły
- Wtopa LED
- Miało być zniesienie abonamentu RTV, a jest podwyżka!!!
- Microsoft, C/C++ na Rust - news
- Pierwsza mapa kosmosu w 102 długościach fal podczerwieni! To początek nowej ery w astronomii
- Rosjanie chwalą się prototypem komputera kwantowego. "Najważniejszy projekt naukowy Rosji"
- zasilacz
- Zegary DCF
Najnowsze wątki
- 2026-01-08 Umiejętność tankowania na egzaminie z prawa jazdy
- 2026-01-08 Nowy akumulator Donut Lab
- 2026-01-08 Komenda policji nie ma nic wspólnego ze sprawą zgwałcenia policjantki
- 2026-01-08 Pilot do zamka/bramy
- 2026-01-08 Ślad węglowy
- 2026-01-08 Prezydent SZAP/USONA Trump ułaskawił prezydenta Hondurasu Hernandeza skazanego na 45 lat więzienia
- 2026-01-08 Prezydent SZAP/USONA Trump ułaskawił prezydenta Hondurasu Hernandeza skazanego na 45 lat więzienia
- 2026-01-08 Agora zwalnia grupowo, mimo że w firmie pojawiły się zyski, czyli załoga zapracowała na siebie
- 2026-01-08 Agora zwalnia grupowo, mimo że w firmie pojawiły się zyski, czyli załoga zapracowała na siebie
- 2026-01-08 Dlaczego wrzucenie szkolnego krzyża do śmieci to zbrodnia mniejsza od zgaszenia sejmowej menory?
- 2026-01-08 NR 5G -- mity, hity, kity, bez satelity...
- 2026-01-07 Oszustwa w go go
- 2026-01-07 Jaka myjka ultradźwiękowa?
- 2026-01-07 POCO
- 2026-01-07 Kraków => Konsultant Microsoft Dynamics AX/365 SCM Consultant - Servi




5 Najlepszych Programów do Księgowości w Chmurze - Ranking i Porównanie [2025]