Sprawdzanie zakresu: Różnice pomiędzy wersjami

Dodane 25 bajtów ,  8 miesięcy temu
m
Poprawiono odnośnik do C (język programowania)
(poprawiony link do języka D)
Znaczniki: Z internetu mobilnego Z wersji mobilnej
m (Poprawiono odnośnik do C (język programowania))
 
Ponieważ sprawdzanie zakresu przy każdym odwołaniu się do zmiennej lub tablicy jest czasochłonne, w niektórych aplikacjach nie przeprowadza się tego sprawdzenia. Istnieją też specjalne techniki kompilacji umożliwiające eliminację sprawdzeń zakresu w wielu częstych przypadkach; zobacz [[eliminacja sprawdzania zakresu]].
 
Wiele języków programowania, takich jak [[C (język programowania)|C]]/[[C++]], nigdy nie przeprowadza automatycznego sprawdzania zakresu, co jest umotywowane kwestią szybkości działania programu. Jest to przyczyną bardzo wielu błędów [[off by one]] i [[przepełnienie bufora|przepełnienia bufora]].
 
Popularne języki wymagające sprawdzania zakresu podczas działania programu to [[Ada (informatyka)|Ada]], [[Visual Basic]], [[Java]] i [[C Sharp|C#]]. W języku [[D (język programowania)|D]] i wielu innych sprawdzanie zależy od przełącznika kompilatora. C# pozwala na fragmenty kodu oznaczone ''unsafe'', w których można między innymi pominąć sprawdzanie zakresu i umożliwić używanie surowych wskaźników do pamięci dla szybszego wykonania kodu. Jest to przydatne do optymalizacji niewielkich, a często wywoływanych fragmentów, bez obniżania bezpieczeństwa wykonania całego programu.
92

edycje