Citat:
developer94: Da li globalne varijable zaista mogu da prave takve probleme usled smetnji/da li su podlozne slucajnim promenama?
globalne varijable se nikad ne menjaju same od sebe, isto kao sto se to ne desava ni sa lokalnim varijablama. Lokalne varijable su samo "trap for young players" iliti ako ne znas sta radis, sa globalnom varijablom je lako napraviti gresku koju posle tesko izdebagiras.
varijabla se u mcu-u menja
- kada je namerno promenis u kodu (x = 10)
- kada je slucajno promenis u kodu (pointeri koji gadjaju na pogresno mesto, izlazi iz granica nizova, nisu inicijalizovani etc etc)
- kada mcu krene da ti izvrsava datu (imas goto na smece i slicno)
- kada neki EstagodI prsne u mcu i ovaj "poblesavi" (najcesci primer su smetnje koje ulecu preko adc pina)
varijabla se u mcu-u ne menja (a hteo si)
- ako se zaboravio da je promenis
- ako treba da bude volatile a ti je nisi napravio da bude volatile (npr menjas je u interaptu)
E sad gresaka imas koliko oces, od toga da mislis da editujes lokalnu varijablu a ti editujes globalnu do toga da mislis da editujes globalnu a ti editujes lokalnu, sa jedno 5000 razlicitih gresaka izmedju ..
Citat:
developer94:Da, cisto da proverim - da li su ovakva pitanja ovde validna, ili jednostavno da preskocim taster nova tema ukoliko naidjem na potrebu za postavljanjem ovakvog pitanja? (na koje na zalost ne postoji konkretan odgovor)
Ukoliko nisu, ja vam se izvinjavam i zamolio bih administratora da ukloni temu, da ne bih trovao ovaj forum ovako necime.
sto ne bi, mnogo je lakse i konkretnije kada ima primer pa se u tom primeru direktno vidi sta je greska... jbg svi po nekad rade neki proprietary kod, i ja se 100% zalazem za open source pa opet po nekad moram da nacukam neki proprietary kod koji ne smem da delim .. sve to ima svoje ..