05-05-2012, 15:46
Wygląda na to, że albo zainteresowanie programowaniem w C mocno zmalało albo nadszedł czas na inne rodzaje zainteresowań (działki, łódki, rowery z silnikami i bez).
Podczas pisania oprogramowania w C bardzo często popełniamy te same proste błędy. Może warto przy okazji tego kursu napisać kilka postów na ten temat aby inni ich nie popełniali. Czasem są to tak proste i oczywiste błędy a mimo to trudno jest je zlokalizować w programie.
# prostym i częstym błędem jest zły sposób indeksowania tablicy. Jeśli tablica ma np. rozmiar 10 tablica[10], to tablica[0] jest pierwszym elementem tablicy a tablica[9] ostatnim. Próba zapisu/odczytu elementu tablica[10] spowoduje poranie/zapis danych poza tablicą.
# częstym błędem w wyrażeniach warunkowych jest umieszczanie jednego znaku '=' zamiast dwóch '=='. Wygląda bardzo podobnie i naturalnie z lekcji matematyki, kompilator nie zaprotestuje ale wynik będzie zupełnie inny od zamiaru programisty.
if (x=1) oblicz(); ...........................zamiast................if(x==1) oblicz();
W pierwszym przypadku zamiast sprawdzenia warunku zmienna X przyjmie wartość równą 1.
Podczas pisania oprogramowania w C bardzo często popełniamy te same proste błędy. Może warto przy okazji tego kursu napisać kilka postów na ten temat aby inni ich nie popełniali. Czasem są to tak proste i oczywiste błędy a mimo to trudno jest je zlokalizować w programie.
# prostym i częstym błędem jest zły sposób indeksowania tablicy. Jeśli tablica ma np. rozmiar 10 tablica[10], to tablica[0] jest pierwszym elementem tablicy a tablica[9] ostatnim. Próba zapisu/odczytu elementu tablica[10] spowoduje poranie/zapis danych poza tablicą.
# częstym błędem w wyrażeniach warunkowych jest umieszczanie jednego znaku '=' zamiast dwóch '=='. Wygląda bardzo podobnie i naturalnie z lekcji matematyki, kompilator nie zaprotestuje ale wynik będzie zupełnie inny od zamiaru programisty.
if (x=1) oblicz(); ...........................zamiast................if(x==1) oblicz();
W pierwszym przypadku zamiast sprawdzenia warunku zmienna X przyjmie wartość równą 1.
73 Adam

