ODBIERZ TWÓJ BONUS :: »

Programista nr 98. Zaprzyjaźnij się z kompilatorem. Krótki przewodnik po flagach kompilatora

Wydawnictwo:
Magazyn Programista
Ocena:
Bądź pierwszym, który oceni tę książkę
Stron:
76
Dostępne formaty:
     PDF
     ePub
     Mobi
Czytaj fragment

Ebook 11,90 zł najniższa cena z 30 dni

25,90 zł (-15%)
22,02 zł

Dodaj do koszyka lub Kup na prezent Kup 1-kliknięciem

11,90 zł najniższa cena z 30 dni

Przenieś na półkę

Do przechowalni

Zaawansowane metody optymalizacji mogą przyczynić się do generowania trudnych do wykrycia błędów, jeśli kod wejściowy nie jest napisany zgodnie ze standardem. Wykrycie źródła nieprawidłowości może być trudne i zależne od wielu czynników, np. wersji kompilatora i stopnia optymalizacji. Część błędów można wyeliminować, korzystając z rozbudowanej diagnostyki, jaką oferują kompilatory.

Standard języka C zakłada, że pewne operacje są niezdefiniowane (np. dzielenie przez zero) i nie mogą one wystąpić w prawdziwym kodzie. Twórcy kompilatorów wykorzystują ten fakt w celu opracowywania coraz bardziej wyrafinowanych metod optymalizacji kodu. Zakładając, że opisane w standardzie sytuacje nie mogą mieć miejsca, kompilator może rozszerzyć obszar optymalizacji i wygenerować bardziej wydajny kod wynikowy. Warto zaznaczyć, że kompilator nie jest zobowiązany do wykrywania wyrażeń niezdefiniowanych podczas procesu kompilacji. Według standardu to programista jest zobowiązany do tworzenia poprawnego kodu. Jeśli programista popełni błąd i dopuści do pojawienia się operacji niezdefiniowanej, to kompilator ma pełną dowolność, w jaki sposób taki kod zostanie przetworzony. Sposób obsługi niepoprawnego kodu wejściowego może zależeć od wielu czynników: wersji kompilatora, stopnia optymalizacji czy architektury procesora. Istnieje szansa, że w pewnych warunkach skompilowany program będzie zachowywał się zgodnie z intencją programisty, podczas gdy na innej platformie będą obserwowane nieskorelowane błędy. W konsekwencji wykrycie przyczyny może być żmudne i czasochłonne. Na szczęście można ograniczyć ryzyko zaimplementowania niedozwolonej operacji poprzez dodanie odpowiednich opcji diagnostycznych na etapie budowania i testowania kodu...

Sprawdź cały spis treści Programisty nr 98

Wybrane bestsellery

Magazyn Programista - inne książki

Zamknij

Przenieś na półkę
Dodano produkt na półkę
Usunięto produkt z półki
Przeniesiono produkt do archiwum
Przeniesiono produkt do biblioteki

Zamknij

Wybierz metodę płatności

Ebook
22,02 zł
Dodaj do koszyka
Sposób płatności