eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaCVAVR - jak nie inicjalizować wartości zmiennej › Re: CVAVR - jak nie inicjalizować wartości zmiennej
  • Data: 2009-01-28 19:00:25
    Temat: Re: CVAVR - jak nie inicjalizować wartości zmiennej
    Od: Adam Dybkowski <a...@4...pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    T.M.F. pisze:

    >> Jeżeli zmienna wpadnie do sekcji .bss - to zostanie automatycznie
    >> wyzerowana. Jeżeli potrzeba zmiennej, która nie będzie inicjowana,
    >> trzeba skorzystać z dobrodziejstwa sekcji ".noinit".
    >
    > W takim przykladzie:
    > void main()
    > {
    > int a;
    >
    > if(a==costam) DoSomething();
    > }
    >
    > Zmienna a nie bedzie inicjalizowana. Poniewaz za kazdym razem trafia w
    > to samo miejsce programu jej wartosc bedzie zachowana pomiedzy
    > uruchomieniami. Oczywiscie kompilator wyrzuci ostrzezenie, ze uzywamy
    > niezainicjalizowanej zmiennej, ale w koncu o to nam chodzi.

    Zmienna "a" jest w powyższym przykładzie lokalna i oczywiście trafi na
    stos lub zostanie upchnięta w rejestrze. W twoim przykładzie tak się
    składa, że zawsze trafi w to samo miejsce (bo jest w funkcji main -
    wywoływanej zawsze tak samo i z tego samego miejsca) ale gdyby była w
    innej funkcji to już nie będzie tak różowo.

    --
    Adam Dybkowski
    http://dybkowski.net/

    Uwaga: przed wysłaniem do mnie maila usuń cyfry z adresu.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: