Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 30 mar 2026, o 20:59


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 38 ]  Przejdź na stronę 1, 2  Następna strona
Autor Wiadomość
PostNapisane: 5 lut 2014, o 19:56 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 07 sty 2014
Posty: 336
Lokalizacja: Grodzisk Mazowiecki
Pomógł: 13

Pozwolę sobie w tym miejscu zamieścić pytania które mi się pojawiają podczas czytania książki.
Przebrnąłem wczoraj przez przesunięcia bitowe. Temat w zasadzie prosty do strony numer 100 gdzie trafiłem na zapis
Cytuj:
PORTD = (1<<6); //pamiętaj jednak że pozostałe bity zostaną wyzerowane

Według tego zapisu bit siódmy portu D ma mieć wartość 1
Napisałem siódmy bo według mnie bit0 to bit pierwszy.
Jakie nazewnictwo tutaj panuje bit0 jest zerowy czy pierwszy ??
Pytam bo bitów jest osiem i do tej pory liczyłem je jako pierwszy, drugi....ósmy

Jeżeli w ten sposób będę chciał ustawić dwa lub więcej bitów portu tak jak poniżej:
PORTD = (1<<6);
PORTD = (1<<5);
PORTD = (1<<4);

To rezultat tego będzie zamiast spodziewanego

PORTD b00111000

Taki:

PORTD b00001000

Ponieważ ostatnie polecenie PORTD = (1<<4); wyzeruje mi wcześniej ustawione bity. Dobrze kombinuje?

_________________
"Nie programuj w święta - bug się rodzi"



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lut 2014, o 19:59 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27450
Lokalizacja: Szczecin
Pomógł: 1045

Musi sobie kolega zapamiętać raz na zawsze ;) że w C nie ma bitu nr 8 ;) w bajcie .... jest to bit nr 7 ;)

a dlaczego ?

a dlatego że w C WSZYSTKO liczy się od zera a nie tak jak w Bascomie od JEDEN

i tu trzeba się przestawić ;) ... o ile o to chodziło ?


Autor postu otrzymał pochwałę

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lut 2014, o 20:03 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 10 mar 2013
Posty: 739
Lokalizacja: Poznań
Pomógł: 84

kolego @tomson5 dokładnie tak jak piszesz
żeby uzyskać zamierzony efekt musisz skorzystać z operatora

" |= "

np.
PORTD |= (1 << 4)

wtedy zmienisz stan tylko interesującego pinu uC a
pozostałe zostaną takie jakie były


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lut 2014, o 20:08 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 29 sty 2012
Posty: 777
Lokalizacja: Karpicko k. Wolsztyna
Pomógł: 197

Ja tylko dodam, że zamiast takiego zapisu
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

lepiej stosować taki
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


W jednym i drugim rezultat będzie taki sam ale w tym drugim od razu widać jaki bit jest ustawiany. Lepiej to w kodzie wygląda.


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lut 2014, o 20:37 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 07 sty 2014
Posty: 336
Lokalizacja: Grodzisk Mazowiecki
Pomógł: 13

Jasne Mirku że o to chodziło.
Naleciałości Bascomowe się uwidaczniają :D Swoją drogą jednak cieszę się z jego znajomości ponieważ do setnej strony doleciałem bezboleśnie, a pętle to tak jakbym znał od dziecka :D
Są oczywiście małe niejasności jak np: Void ale myślę że jak przyjdzie czas na przykłady to dotrze do pnia mózgu.
Z drugiej strony to dopiero pierwsze czytanie więc normalnym jest że nie wszystko musi od razu wejść do głowy.

Pozostałym kolegom również dziękuje za pomoc.

Z ostatniej chwili:
Była omawiana instrukcja GOTO.
Utkwiła mi w głowie jeszcze za czasów Atari. Później słyszałem tylko że nie powinno jej się używać.
W Bascomie również jej nie zalecają ale w zamian była instrukcja GOSUB.
Co tutaj C nam oferuje??

_________________
"Nie programuj w święta - bug się rodzi"



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lut 2014, o 20:50 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 06 maja 2012
Posty: 233
Lokalizacja: Gdynia
Pomógł: 15

Jeszcze kilka kartek i dojdziesz do rozdziału 'Funkcje' i to będzie odpowiedzią na twoje pytanie.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lut 2014, o 20:54 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 29 sty 2012
Posty: 777
Lokalizacja: Karpicko k. Wolsztyna
Pomógł: 197

W Bascomie miałeś podprogramy, procedury i funkcje.
Podprogramy wywoływało się poprzez Gosub, procedury poprzez Call a funkcje... w sumie to nie wiem bo nigdy ich nie używałem.

W C są tylko funkcje.
Funkcje, które nie przyjmują argumentów ani nie zwracają rezultatu np void fun(void) są podobne do bascomowych podprogramów.
Funkcje, które przyjmują argumenty ale nie zwracają rezultatu np. void fun(uint8_t zmienna) są podobne do procedur.
Natomiast funkcje, które przyjmują argumenty i zwracają rezultat np. uint8_t fun(uint8_t zmienna) są podobne do bascomowych funkcji (masło maślane).

Jak dla mnie jest to o wiele bardziej przejrzyste.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lut 2014, o 20:56 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27450
Lokalizacja: Szczecin
Pomógł: 1045

tomson5 napisał(a):
Co tutaj C nam oferuje??


przede wszystkim - zapomnij, wymaż z pamięci słowo GOTO, czy sposób myślenia o GOSUB ... w C ;) ... tego trzeba się jak najszybciej pozbyć

co oferuje C ?

hmmm C oferuje tu krainę miodu, poezję kodu, kompozycję rozkoszy - czyli ? - krótko mówiąc funkcje .... :lol:

poważnie mówię - to akurat nie jest żart ;)

------------------------ [ Dodano po: 3 minutach ]

Cytuj:
W Bascomie miałeś podprogramy, procedury i funkcje.


ja bym tylko dodał, że pomimo iż coś takiego jak procedury i funkcje są w Bascomie to mało kto ich tam używa niestety :( ale też nie ma co się dziwić bo stanowią one gigantyczny dodatkowy narzut ... w każdym aspekcie, nie mówiąc już że mało kto rozumie ich użycie - skoro w Bascomie króluje jednak używanie GOTO i GOSUB

absolutnie - proszę nie odebrać moich wypowiedzi jako ATAK na Bascom - nigdy w życiu - chciałbym tylko pokazać ISTOTNE RÓŻNICE, i to co trzeba zmieniać w podejściu do programowania - gdy się przesiada na C. A im więcej takich naleciałości z Bascoma tym człowiek dłużej się później przesiada .... skąd to wiem ??? nie nie - nie zmyślam .... sam się musiałem przesiadać - stąd wiem i stąd znam tę ciernistą drogę ;)

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lut 2014, o 21:10 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 29 sty 2012
Posty: 777
Lokalizacja: Karpicko k. Wolsztyna
Pomógł: 197

mirekk36 napisał(a):
ja bym tylko dodał, że pomimo iż coś takiego jak procedury i funkcje są w Bascomie to mało kto ich tam używa niestety

Święta racja. Wiem to po sobie. Jak ja rzeźbiłem w Bascomie to myślałem tak "po co mi jakieś procedury i funkcje skoro stworze sobie w programie od groma zmiennych globalnych i wszystko zrobię na podprogramach".
Na szczęście C wyprostował mój tok rozumowania i teraz nie tworze już całej masy zmiennych globalnych tylko używam zmiennych lokalnych wszędzie tam gdzie się da. Bo po co taka zmienna ma istnieć przez całe życie programu i zajmować RAM skoro używam jej kilka razy w ciągu życia programu.

Mam nadzieję, że się nie narażam kolegom bascomowcom :-)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lut 2014, o 21:50 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27450
Lokalizacja: Szczecin
Pomógł: 1045

jacekk232 napisał(a):
Jak ja rzeźbiłem w Bascomie to myślałem tak "po co mi jakieś procedury i funkcje skoro stworze sobie w programie od groma zmiennych globalnych i wszystko zrobię na podprogramach".


hahaha :lol: .... a ja myślałem - że kiedyś to TYLKO ja tak sobie myślałem ;) a identycznie myślałem jak ty za czasów Bascoma ;) .... i idę o zakład - że nie było tylko nas dwóch z takim myśleniem ;)

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 lut 2014, o 22:53 
Offline
Użytkownik

Dołączył(a): 04 paź 2011
Posty: 8631
Pomógł: 338

no cóż ale taka prawda o bascomie .... szybciej i łatwiej się pisało goto-we programy :P
co prawda zasoby znikały zastraszająco szybko , ale myślenie o stosowaniu zawiłych i mało trendy Funkcji czy procedur powodowało po prostu brak potrzeby ich stosowania , tak wiec nie jako znam to z autopsji przyjaciele.

łatwiej było sobie z-GOTO-wać samemu taki los ... posiłkując się GOSUBem :)

W sumie to nawet nie tyle idzie o bascom , a o wyniesienie nawyków z BASICA na C=64 czy ZX-S
brakowało w bascomie do szczęścia tylko POKE :)

Odkąd jednak zapoznałem się ze StormC na m68k to tam była inna bajka , wbrew "pomylonej" składni
wszystko było oczywiste i proste , co ważniejsze po przejściu na PPC z m68k a potem na x86 okazało się że
80% kodu jest przenośne zmianie ulegają tylko specyficzne odwołania do rejestrów których dana rodzina nie posiada, to zaowocowało naprawdę przyjemna pracą podczas pisania na PIC i AVR , a potem i na ARM

Poznając i może przede wszystkim zaprzyjaźniając się z C wszystko jest przed tobą otworem .. każdy procek czy system ... a przestawienie się z jednego na drugi jest bardzo łatwe i bezbolesne.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 lut 2014, o 00:58 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27450
Lokalizacja: Szczecin
Pomógł: 1045

SunRiver napisał(a):
Poznając i może przede wszystkim zaprzyjaźniając się z C wszystko jest przed tobą otworem .. każdy procek czy system ... a przestawienie się z jednego na drugi jest bardzo łatwe i bezbolesne.


amen :lol:

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 lut 2014, o 08:01 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 07 sty 2014
Posty: 336
Lokalizacja: Grodzisk Mazowiecki
Pomógł: 13

Faktycznie wczoraj dotarłem do Funkcji i robi się jaśniej.



Edit: Może brak stosowania procedur i funkcji wynikał nie ze złej woli użytkowników ale z braku wiedzy. Ja i pewnie większość bazowała na helpie i dwóch książkach z czego w jednej jak się nie mylę niebyło nic a w drugiej coś skrobnięte bez mocnych przykładów. Ja pod koniec swojej nauki dopiero zacząłem zgłębiać ten temat i szukać zastosowań dla nich.
Pojawił się taki Mirek i skończyła się kariera Bascomowa :-D ;-)

_________________
"Nie programuj w święta - bug się rodzi"



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 lut 2014, o 09:02 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27450
Lokalizacja: Szczecin
Pomógł: 1045

tomson5 napisał(a):
Faktycznie wczoraj dotarłem do Funkcji i robi się jaśniej.


Masz rację - to jest rzeczywiście jak "przejście na jasną stronę MOCY" :lol:

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 lut 2014, o 20:49 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 07 sty 2014
Posty: 336
Lokalizacja: Grodzisk Mazowiecki
Pomógł: 13

Jestem na 120 stronie a dla tych co nie widzą książki przepiszę program:

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Rozumiem działanie funkcji led_onoff tylko mam problem ze zrozumieniem warunku if else wewnątrz funkcji
Za pomocą zmiennej stan wprowadzamy dane do wnętrza funkcji i sprawdzamy warunek

Przy założeniu że stan = 1
Poniższy warunek rozumiem i jest dla mnie oczywisty.
if stan = 1 PORTB |= (1<<PB2); // jeśli stan = 1 to ustaw bit2 portu B
else PORTB &= ~(1<<PB2); // w przeciwnym razie wyzeruj bit2 portu B


Przy założeniu że stan = 0
Poniżej tego nie mogę zrozumieć.
Z mojego rozumowania raz wprowadzamy za pomocą zmiennej stan wartość 1 a chcąc zgasić diodę wprowadzamy wartość 0 i ten warunek coś mi nie pasi.
if stan = 0 PORTB |= (1<<PB2);
else PORTB &= ~(1<<PB2);

Proszę mnie kopnąć na dobry tok rozumowania ;)

P.S.
Na koniec mnie trafiło. Czy wolno mi umieszczać taki kod z książki w w/w celu??

_________________
"Nie programuj w święta - bug się rodzi"



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 lut 2014, o 20:59 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 29 sty 2012
Posty: 777
Lokalizacja: Karpicko k. Wolsztyna
Pomógł: 197

W C wszystko co nie jest zerem jest traktowane jako PRAWDA a zero traktowane jest jako FAŁSZ.
Więc jeśli do tej funkcji przekażemy jakiś argument, który nie jest zerem to wykonany będzie pierwszy warunek a jeśli zero to wykona się warunek drugi.
Warunek
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
będzie prawdziwy dla wszystkich wartości zmiennej stan różnej od zera.


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 lut 2014, o 21:00 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27450
Lokalizacja: Szczecin
Pomógł: 1045

tomson5 napisał(a):
Na koniec mnie trafiło. Czy wolno mi umieszczać taki kod z książki w w/w celu??


WSZYSTKO co w książce jest w plikach main.c - spokojnie można .... Jedynie prośba aby bibliotek nie umieszczać publicznie na forach - ok?

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 lut 2014, o 21:02 
Offline
Użytkownik

Dołączył(a): 10 sie 2012
Posty: 91
Lokalizacja: Wąbrzeźno
Pomógł: 0

Chyba nie rozumiesz nawet pierwszego warunku, jeśli masz coś większe od zera np. if(93) to Ci się zawsze wykona. Jeżeli będziesz miał if(0) to ci się nie wykona i wtedy wykonuje się else.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 lut 2014, o 21:03 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 07 lut 2013
Posty: 600
Pomógł: 47

if(jeżeli tu się znajdzie wartość różna od 0)
To się wykona tu zamieszczony kod
else
A tu jeżeli wartość będzie 0

Chyba oto ci chodzi.


Autor postu otrzymał pochwałę

_________________
https://www.instagram.com/myfirstquadcopter/



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 lut 2014, o 21:09 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27450
Lokalizacja: Szczecin
Pomógł: 1045

panowie - w książce dosyć precyzyjnie to opisuję - bo tak to można długo

wystarczy sobie uświadomić co to w C jest TRUE a co to jest FALSE

więc TRUE to jest wartość inna niż zero
natomiast FALSE to jest zero

a zatem jeśli mamy zmienną k=5 i warunek

if( k ) .....

to znaczy ???? że będzie spełniony bo TRUE zgadza się ? ;)

a jeśli k=0

to

if( k ) .....

będzie FALSE i warunek nie będzie spełniony

przy okazji - to jest PIĘKNY mechanizm w C ;)

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 lut 2014, o 21:21 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 07 sty 2014
Posty: 336
Lokalizacja: Grodzisk Mazowiecki
Pomógł: 13

Cytuj:
W C wszystko co nie jest zerem jest traktowane jako PRAWDA a zero traktowane jest jako FAŁSZ.

Jedno zdanie i wszystko jasne.

Dziękuje pozostałym kolegom również.

Czyli mam rozumieć że warunek
if K = 5 ....
będzie spełniony tylko kiedy K = 5 natomiast
if(k)....
będzie spełniony kiedy K != 0

Mirku OK OK :)

_________________
"Nie programuj w święta - bug się rodzi"



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 lut 2014, o 21:27 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 25 lis 2013
Posty: 108
Pomógł: 0

Jeżeli można coś wtrącić , to jakiś czas temu ja też postanowiłem nauczyć się programowania mikroprocków w C , i szło mi to mizernie , wiec postanowiłem po prostu nauczyć się języka C , i tłukłem go tak długo na konsolach , aż go zrozumiałem.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 lut 2014, o 21:27 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 07 lut 2013
Posty: 600
Pomógł: 47

Cytuj:
if K = 5 ....


Tylko trzeba pamiętać że jak porównujemy w ifie np. (fi(k==5) dajemy dwa == bo inaczej przypisalibyśmy 5 do k, a następnie zostało by sprawdzone k czy jest różne od 0.

_________________
https://www.instagram.com/myfirstquadcopter/



Ostatnio edytowano 6 lut 2014, o 21:31 przez kurnachatka, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 lut 2014, o 21:31 
Offline
Użytkownik

Dołączył(a): 10 sie 2012
Posty: 91
Lokalizacja: Wąbrzeźno
Pomógł: 0

tomson5 napisał(a):
Cytuj:
W C wszystko co nie jest zerem jest traktowane jako PRAWDA a zero traktowane jest jako FAŁSZ.

Czyli mam rozumieć że warunek
if K = 5 ....
będzie spełniony tylko kiedy K = 5 natomiast
if(k)....
będzie spełniony kiedy K != 0


Jak sprawdzasz K to nie możesz napisać = bo wtedy przypisujesz wartość, w tym przypadku równą K=5.
Jak sprawdzasz, to pisz == np
if(K==5) //wykonanie jeżeli prawda(K równe 5)
else // K różne od 5.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 lut 2014, o 21:35 
Offline
Użytkownik

Dołączył(a): 20 wrz 2013
Posty: 647
Zbananowany użytkownik

Pomógł: 101

kurnachatka napisał(a):
Cytuj:
if K = 5 ....


Tylko trzeba pamiętać że jak porównujemy w ifie np. (fi(k==5) dajemy dwa == bo inaczej przypisalibyśmy 5 do k.


O, dobrze że to poruszyłeś. Jedno '=' zamiast w dwóch w warunku to dosyć częsty, bardzo trudny do zdebugowania, błąd. Jak to działa? 'if K=5' będzie ZAWSZE true a przy okazji do K zostanie przypisana wartość 5. Wykryć to w większym programie to niezły horror.

_________________
+++++[>++++<-]>[>++++++<-]>.---------.+++.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 lut 2014, o 21:41 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 29 sty 2012
Posty: 777
Lokalizacja: Karpicko k. Wolsztyna
Pomógł: 197

Dlatego zamiast pisać
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

lepiej jest pisać
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

W pierwszym przypadku, gdy zapomnimy jednego "=", kompilator zgłosi warninga ale kompilacja przejdzie ale w drugim przypadku kompilator zgłosi błąd i kompilacja nie przejdzie.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 lut 2014, o 21:44 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 07 sty 2014
Posty: 336
Lokalizacja: Grodzisk Mazowiecki
Pomógł: 13

ech.. Błąd opisany w książce a ja już zdążyłem popełnić :oops:

_________________
"Nie programuj w święta - bug się rodzi"



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 lut 2014, o 21:46 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 07 lut 2013
Posty: 600
Pomógł: 47

jacekk232 napisał(a):
W pierwszym przypadku, gdy zapomnimy jednego "=", kompilator zgłosi warninga ale kompilacja przejdzie ale w drugim przypadku kompilator zgłosi błąd i kompilacja nie przejdzie.

W sumie dobry sposób ale tylko jeżeli porównujemy z stałą.
W sumie wszystkie porównania są dwu znakowe, chyba że o czymś nie wie to niech mnie sprostuje.

_________________
https://www.instagram.com/myfirstquadcopter/



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 lut 2014, o 22:01 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 10 sty 2014
Posty: 448
Lokalizacja: DKL
Pomógł: 53

kurnachatka napisał(a):
W sumie wszystkie porównania są dwu znakowe, chyba że o czymś nie wie to niech mnie sprostuje.
Jeśli używasz operatorów relacji mniejszy niż <, większy niż >, to chyba jeden znak.

_________________
Migracja z punktu B do punktu C
Pozdrawiam



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 lut 2014, o 22:05 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 07 lut 2013
Posty: 600
Pomógł: 47

matw napisał(a):
Jeśli używasz operatorów relacji mniejszy niż <, większy niż >, to chyba jeden znak.

No fakt jak mnie mogło tak zaćmić :oops: :oops:

_________________
https://www.instagram.com/myfirstquadcopter/



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 38 ]  Przejdź na stronę 1, 2  Następna strona

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Baidu [Spider] i 2 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO