-
Data: 2011-05-04 09:18:07
Temat: Re: teoria bledow
Od: Paweł Kierski <n...@p...net> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu 2011-05-04 10:48, apl pisze:
>
>> malo kto sprawdza takie rzeczy, ale blad sie
>> moze rozpropagowac az program uderzy w sciane
>> np na bledzie ochrony pamieci
>>
>> to jest tez ciekawe czy sa takie (albo czy
>> sa mozliwe) takie systemy w ktorych
>> prog nie moze uderzyc w sciane - tylko
>> np produkowac smieci i nic wiecej -
>
> Moim zdaniem program nigdy nie powinien produkować śmieci. Częstą
> przyczyną trudno wykrywalnych błędów jest automatyczne "zerowanie"
> zmiennych na etapie kompilacji. To kardynalny błąd! Pamięć
> przydzielana zmiennym powinna raczej być ustawiana na wartości
> nieakceptowalne dla typu zmiennych, a przynajmniej wszystkie bity na
> True, tak aby użycie wartości zmiennej, której nie nadał program,
> automatycznie powodowało "uderzenie o ścianę". Zero jest najczęściej
> akceptowane jako "dobra" dana, natomiast wartości skrajnie wielkie
> będą na ogół prowadzić do przesterowań. Ja, w swojej praktyce stosuję
> właśnie takie przekorne podejście i inicjuję zmienne tak, aby nie
> wchodziło w rachubę użycie przypadkowej wartości.
VC w konfiguracji Debug domyślnie ustawia wartości bajtów 0xCC.
Część coding standards zabrania deklarowania zmiennej bez jej
inicjowania. Są też narzędzia do statycznej analizy kodu, które
pokazują potencjalne użycie niezainicjowanych zmiennych.
--
Paweł Kierski
n...@p...net
Następne wpisy z tego wątku
Najnowsze wątki z tej grupy
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
Najnowsze wątki
- 2025-01-06 Jeździ, skręca, hamuje
- 2025-01-06 Białystok => System Architect (Java background) <=
- 2025-01-06 Gliwice => Specjalista ds. public relations <=
- 2025-01-06 Białystok => Solution Architect (Java background) <=
- 2025-01-06 Zielona GĂłra => Konsultant WdroĹźeniowy Comarch XL/Optima (KsiÄgowoĹ
- 2025-01-06 Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- 2025-01-06 Ostrów Wielkopolski => Area Sales Manager OZE <=
- 2025-01-06 Do IO i innych elektrooszolomow, tu macie prawdziwe smrody
- 2025-01-06 Białystok => Full Stack .Net Engineer <=
- 2025-01-06 Kraków => Business Development Manager - Network and Network Security
- 2025-01-06 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2025-01-06 Warszawa => Spedytor Międzynarodowy <=
- 2025-01-06 Lublin => Programista Delphi <=
- 2025-01-06 Gdańsk => Specjalista ds. Sprzedaży <=
- 2025-01-06 śnieg