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



Teraz jest 17 mar 2025, o 07:05


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 9 ] 
Autor Wiadomość
PostNapisane: 19 sie 2015, o 18:08 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 18 kwi 2015
Posty: 60
Lokalizacja: Bieruń Nowy
Pomógł: 0

Witam!
Czytam BB i jak to Pan Mirek mówił na bieżąco się dopytuje o zagadnienia, których nie rozumiem. Problem pojawił się już na początku książki. Nie zrozumiałem co to są te argumenty, które są przekazywane do każdej funkcji.
Nie rozumiem również tego co oznacza ten cytat: "Oznacza to, że funkcja zwróci liczbę całkowitą typu int o wartości zero."
Muszę powiedzieć, że z tego fragmentu BB rozumiem tylko to, że ta liczba ma typ int. Natomiast nie rozumiem dlaczego akurat zero. Wiem, że to trochę banalne i niepotrzebne pytanie, ale nurtuje mnie.
"Pomimo, że nasza funkcja główna nigdy nie będzie w stanie zwrócić swojego wyniku"
WTF - dlaczego, przecież zapis funkcji jest poprawny. No chyba, że chodzi o to, że ta funkcja nie ma czego zwrócić, bo jej działanie polega na bezczynności i to w 100%. Ale z drugiej strony wyżej napisałem cytat, który mówi o tym, że funkcja zwróci to niezrozumiałe zero.

O co chodzi?! Jestem naprawdę początkujący i mam taki charakter, że jak czegoś nie rozumiem to chyba wyjdę z siebie jak tego nie pojmę! :x Dlatego proszę o zwięzłe odpowiedzi wytłumaczające powyższe fragmenty.

Jeśli ktoś nie wie to cytaty pochodzą z BB str. 10.

_________________
Pomagać i prosić o pomoc ;-)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 sie 2015, o 18:51 
Offline
Użytkownik

Dołączył(a): 26 lip 2015
Posty: 269
Pomógł: 34

"Pomimo, że nasza funkcja główna nigdy nie będzie w stanie zwrócić swojego wyniku" dlatego że w funkcji głównej znajduje się pętla nieskończona czyli nigdy funkcja nie dojdzie do komendy return .Return zazwyczaj jest na końcu funkcji.
komenda return służy do zwracania wartości funkcji np:
return 0; funkcja zwróci 0
return liczba; funkcja zwróci zawartość zmiennej liczba.

Może trochę inaczej,
gdy chcesz np do zmiennej przypisać jakąś wartość to możesz jej przypisać to co zwróci funkcja np:
int liczba = funkcja(jakieś argumenty);
wtedy zmienna liczba będzie miała taką wartość jaką zwróci funkcja.
W książce w rozdziale o języku C tam jest to dokładniej wytłumaczone.Jak nadal nie rozumiesz to napisz postaram się pomóc.
PS na stronie 113 powinno być to wytłumaczone dokładniej.


Autor postu otrzymał pochwałę


Ostatnio edytowano 19 sie 2015, o 18:56 przez Bartek123, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 sie 2015, o 18:55 
Offline
Moderator
Avatar użytkownika

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

Gimbul napisał(a):
Czytam BB i jak to Pan Mirek mówił na bieżąco się dopytuje o zagadnienia, których nie rozumiem. Problem pojawił się już na początku książki. Nie zrozumiałem co to są te argumenty, które są przekazywane do każdej funkcji.

No ale w książce podaję przykłady przecież ;) ... ok - może jeszcze raz , pomyśl chwilę, chciałbyś np napisać program kalkulatora, który miałby robić jedną z opcji taką jak co? DODAWANIE .... tak ?

No to co ? użytkownik może wklepać nam różne dwie dane które mamy dodać do siebie - zgadza się ?

w takim razie warto przygotować funkcję:

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


Jak widać - mamy tu do czynienia z funkcją o nazwie dodawanie() zgadza się ? to rozumiesz chyba

no i teraz w nawiasach okrągłych przekazujemy do niej jakieś argumenty ;) też zakładamy, że będą miały jakieś typy danych np int

Jak widzisz funkcja jest prosta - ona bierze te dwa argumenty, dodaje jeden do drugiego i zwraca je jako rezultat ... też typu int. Oczywiście może wystąpić tu błąd jeśli przekroczymy zakresy ale jeśli będą to małe liczby (nie ważne czy dodatnie czy ujemne np 4 i 5) to gdy wywołamy funkcję

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


to wynik przyjmie wartość = 9

zgadza się ? .... Jak więc widzisz za pomocą argumentów przekazujemy coś do środka funkcji, która może obliczać coś tam i zwracać wynik

jaśniej ?

------------------------ [ Dodano po: 1 minucie ]

Gimbul napisał(a):
Nie rozumiem również tego co oznacza ten cytat: "Oznacza to, że funkcja zwróci liczbę całkowitą typu int o wartości zero."

Panie - jak robisz cytat - i pytasz o konkretną treść to podaj zawsze stronę i ew numer akapitu żeby można było wiedzieć o czym piszesz - bo ja nie wiem w tym przypadku więc nie umiem odpowiedzieć na tak zadane pytanie


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: 19 sie 2015, o 18:58 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 09 gru 2014
Posty: 1540
Pomógł: 269

Gimbul napisał(a):
nie rozumiem dlaczego akurat zero

Ponieważ występuje tam instrukcja return 0; której zadaniem jest przekazanie tego co jest po jej prawej stronie, w tym przypadku 0.

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


Co do Twojego drugiego pyatnia, to chodzi o to, że mikroprocesor nie posiada systemu operacyjnego, więc główna funkcja int main(void) { } po zakończeniu nawet gdybyśmy zamiast return 0; chcieli zwrócić np 123 (za pomocą return 123;) to nie ma gdzie tego zrwócić, program się po prostu skończy i tyle.

------------------------ [ Dodano po: 1 minucie ]

mirekk36 napisał(a):
zgadza się ?


A nie 9? ;)


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 sie 2015, o 19:17 
Offline
Moderator
Avatar użytkownika

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

Cytuj:
A nie 9?

heheh 9 bo najpierw wpisałem 2,5 , później zobaczyłem w tekście że pisałem 4,5 więc poprawiłem a wynik został 7 :lol: - ale już poprawiłem - dzięki za uwagę

_________________
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: 19 sie 2015, o 20:09 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 18 kwi 2015
Posty: 60
Lokalizacja: Bieruń Nowy
Pomógł: 0

Dziękuję za rozjaśnienie tematu. ;-)
Zwłaszcza koledze bartek123 i Panu Mirkowi. Choć co do tego ostatniego to bym się kłócił, bo podałem, że cytaty pochodzą ze strony 10. ;-)
Teraz widzę jakie to proste i dlaczego funkcje nazywają się funkcje, a nie inaczej. Ładnie to jest wytłumaczone na przykładzie kalkulatora. Naprawdę nie myślałem, że to takie proste. ;-)
Dziękuję!

_________________
Pomagać i prosić o pomoc ;-)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 sie 2015, o 21:09 
Offline
Moderator
Avatar użytkownika

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

Gimbul napisał(a):
, że cytaty pochodzą ze strony 10

No to moja wina, przepraszam ale czasem jak robię 100 rzeczy naraz to czegoś nie zauważę

Najważniejsze, że ci się nie dość , że rozjaśniło to teraz piszesz że to wydaje się proste - i o to chodzi ;)

Widzisz jak to jest - od razu na bieżąco dopytać gdy się czyta książkę - to jest dobra droga a każdy chętnie pomoże

_________________
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: 22 sie 2015, o 19:27 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 18 kwi 2015
Posty: 60
Lokalizacja: Bieruń Nowy
Pomógł: 0

Dziękuję! ;-)
I myślę, że w dalszej części książki będzie tak samo.
A nawiasem mówiąc doszedłem już do timerów i jak za pierwszym razem to otworzyłem to pomyślałem sobie WTF co to jest?
A jak się to czyta po raz któryś to od razu to lepiej wygląda. ;-)

_________________
Pomagać i prosić o pomoc ;-)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 22 sie 2015, o 20:15 
Offline
Moderator
Avatar użytkownika

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

Gimbul napisał(a):
A jak się to czyta po raz któryś to od razu to lepiej wygląda.

Najważniejsze to jeden raz ale po kolei strona po stronie przeczytać cały BB - bo jak się zaczyna czytać na wyrywki - to później tak właśnie jest ;)

powodzenia

_________________
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  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 9 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 1 gość


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