eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronika › Pytanko dotyczące C/C++
Ilość wypowiedzi w tym wątku: 53

  • 11. Data: 2016-08-04 10:42:17
    Temat: Re: Pytanko dotyczące C/C++
    Od: "Ghost" <n...@d...pl>



    Użytkownik napisał w wiadomości grup
    dyskusyjnych:29f17d21-b0b0-4c39-accb-5f6e2410660c@go
    oglegroups.com...

    >Nie wiem gdzie zyskujemy na czytelności..

    Programowanie nie jest dla ciebie :-) Niezależnie od języka.






  • 12. Data: 2016-08-04 10:42:22
    Temat: Re: Pytanko dotyczące C/C++
    Od: s...@g...com

    W dniu czwartek, 4 sierpnia 2016 10:16:47 UTC+2 użytkownik J.F. napisał:


    >
    > Zreszta ... kto nie programowal w PL/1, ten nie wie co to jest
    > konwersja typow :-)

    Nie wiem nawet i nie chcę wiedzieć czym jest PL/1. Domyślam się, że tam to dopiero
    jest Brothel :))

    >
    > >Tymczasem w C, możesz zadeklarować nazwę zmiennej gdzie popadnie.
    > >Nawet zmienną sterującej pętli wewnątrz pętli!! for(int i.. i tak
    > >dalej) .
    > >BURDEL jak cholera !! Hahh!!
    >
    > Jaki burdel ? Zmienna deklarujesz w "bloku" tzn w {}. I w tymze bloku
    > obowiazuje.
    > Dzieki temu nie musisz daleko patrzec.
    > Nie pamietam - a w Pascalu nie jest tak samo ?

    Prawie tak samo, tylko ciuta porządniej. Nie w bloku {-}/begin-end, lecz w
    dedykowanym bloku deklaracji zmiennych lokalnych (var), zaraz po deklaracji
    funkcji/procedury(w C jest to "void" - boszsz...). Dzięki temu nie ma potrzeby
    szukania blisko/daleko.. Po prostu wiadomo gdzie szukać

    >
    > >A idę o zakład , że:
    > >1) Każdy algorytmista czytając żródło w Pascalu, zrozumie o co
    > >chodzi
    > >2) Czytając żródło C - będzie czkawka :))
    >

    >
    > Owszem, jakies ambitniejsze konstrukcje wskaznikowo-tablicowe moga
    > czlowieka dobic, ale coz robic
    >

    Otóż i to. Nawet tak duperelny temat jak mnożenie macierzy, gdzie traba pamiętać o
    odjęciu jedynki od numery wiersz/kolumny.

    > Nie narzekaj na C. Poznasz C++, to C wyda ci sie idealem :-)

    Niestety.. Nie poznam.. Jestem niereformowalny, wątek utworzyłem tylko by upewnić się
    czy rozumiem pewne źródło.

    >
    > Niejaki AL tu zwracal swego czasu uwage na jedna ceche Pascala -
    > zagniezdzone procedury/funkcje, i ich zmienne.
    > Procedury maja dostep do zmiennych procedury nadrzednej, co znakomicie
    > utrudnia implementacje ..
    >

    Istotnie, sam kiedyś miałem na tym delikatnego poślizga. Podobnież miał to kolega AG.



  • 13. Data: 2016-08-04 10:47:24
    Temat: Re: Pytanko dotyczące C/C++
    Od: "Ghost" <n...@d...pl>



    Użytkownik napisał w wiadomości grup
    dyskusyjnych:9756d847-22a1-444a-b88c-f17ae5805bf4@go
    oglegroups.com...

    W dniu czwartek, 4 sierpnia 2016 09:53:22 UTC+2 użytkownik ajt napisał:

    >
    > Umiejscowienie nie ma żadnego znaczenia, wszystkie trzy przykłady są
    > równoważne, pominąłeś jeszcze typ*zmienna, to również to samo.
    > Oczywiście nie można wykluczyć jakiejś egzotycznej implementacji, gdzie
    > ktoś w ten sposób chciałby nadać inne znaczenia, ale to już nie byłoby C
    > ...
    >

    >Dzięki za odpowiedź. Chyba nie do końca prawidłowo zadałem pytanie.
    >Korekta:
    >1) void Jakaś_Tam_Funkcja(typ* zmienna_1,zmienna_2,....,zmienna_n);
    >2) void Jakaś_Tam_Funkcja(typ *zmienna_1,zmienna_2,....,zmienna_n);
    >3) void Jakaś_Tam_Funkcja(typ * zmienna_1,zmienna_2,....,zmienna_n);

    >Chodzi mi o cały wektor zmiennych. Aha , pominąłem jeszcze to samo jak
    >wyżej, ale BEZ GWIAZDKI!! Jak to wtedy działa?

    I nie masz odruchowego wrażenia, ze

    typ* zmienna_1,zmienna_2,....,zmienna_n
    oznacza deklaracje n zmiennych każda typu typ*

    a
    typ *zmienna_1,zmienna_2,....,zmienna_n
    oznacza deklaracje zmienna_1 typu typ*, oraz n-1 zmiennych typu typ?

    Tymczasem obie deklarację robią to samo, znaczy realizują drugi przypadek,
    dlatego należy trzymać gwiazdki przy zmiennych


  • 14. Data: 2016-08-04 10:55:10
    Temat: Re: Pytanko dotyczące C/C++
    Od: s...@g...com

    W dniu czwartek, 4 sierpnia 2016 10:16:41 UTC+2 użytkownik Mateusz Viste napisał:
    > On 04/08/2016 09:40, s...@g...com wrote:
    > > Japierdole!!! Przepraszam, to nie jest reakcja w Twoją stronę, lecz w stronę
    developerów C. Nie wiem gdzie zyskujemy na czytelności.. Gwiazdka w lewo, prawo,
    pośrodku, znaki zapytania gdziebądź, wykrzykniki itd, itp..
    > > Nosz kurwa, wolę w assemblerze mov a,b - przynajmniej wiadomo o co chodzi.
    >
    > Nie rozumiem dlaczego w takim razie upierasz się przy C. Nie podoba się
    > - działaj w czymkolwiek innym... Filozoficzne narzekania prowadzą do nikąd.
    >
    > Mateusz

    Przeczytaj główny wątek do końca ze zrozumieniem.Gdzie chłopie ja się upieram przy C?
    I nie wcinaj się byle gdzie w dyskusję nie wiedząc o co chodzi. Bo to właśnie jest
    "mondralowanie" prowadzące do nikąd. To coś jak z deklaracją zmiennej w C byle gdzie.
    Byle gdzie przeczytałeś parę zdań, a co do meritum tematu nie masz bladego pojęcia.
    Przeczytaj główny wątek !!


  • 15. Data: 2016-08-04 11:01:41
    Temat: Re: Pytanko dotyczące C/C++
    Od: Mateusz Viste <mateusz.viste@localhost>

    On 04/08/2016 10:18, s...@g...com wrote:
    > Dzięki za odpowiedź. Chyba nie do końca prawidłowo zadałem pytanie. Korekta:
    > 1) void Jakaś_Tam_Funkcja(typ* zmienna_1,zmienna_2,....,zmienna_n);
    > 2) void Jakaś_Tam_Funkcja(typ *zmienna_1,zmienna_2,....,zmienna_n);
    > 3) void Jakaś_Tam_Funkcja(typ * zmienna_1,zmienna_2,....,zmienna_n);
    >
    > Chodzi mi o cały wektor zmiennych. Aha , pominąłem jeszcze to samo jak wyżej, ale
    BEZ GWIAZDKI!! Jak to
    wtedy działa?

    Bez gwiazdki to po prostu int przepisany "by value", a nie wskaźnik ("by
    reference").

    Co do "wektora zmiennych", to w powyższym przykładzie nic takiego nie ma
    miejsca. To po prostu lista parametrów, gdzie pierwszy parametr jest
    wskaźnikiem do zmiennej typu "typ", a kolejne są int-ami (brak definicji
    typu = int, patrz sekcja 6.7.1 z ISO/IEC 9899:1990).

    Naturalnie składnia "...." jest nieprawidłową deklaracją funkcji
    wariadycznej, ale domniemywam że nie było to celowe.

    Zapraszam na pl.comp.lang.c - lub (zależnie od nastawienia) -
    pl.sci.filozofia

    Mateusz


  • 16. Data: 2016-08-04 11:02:02
    Temat: Re: Pytanko dotyczące C/C++
    Od: s...@g...com

    W dniu czwartek, 4 sierpnia 2016 10:48:34 UTC+2 użytkownik Ghost napisał:
    > Użytkownik napisał w wiadomości grup
    > dyskusyjnych:9756d847-22a1-444a-b88c-f17ae5805bf4@go
    oglegroups.com...
    >
    > W dniu czwartek, 4 sierpnia 2016 09:53:22 UTC+2 użytkownik ajt napisał:
    >
    > >
    > > Umiejscowienie nie ma żadnego znaczenia, wszystkie trzy przykłady są
    > > równoważne, pominąłeś jeszcze typ*zmienna, to również to samo.
    > > Oczywiście nie można wykluczyć jakiejś egzotycznej implementacji, gdzie
    > > ktoś w ten sposób chciałby nadać inne znaczenia, ale to już nie byłoby C
    > > ...
    > >
    >
    > >Dzięki za odpowiedź. Chyba nie do końca prawidłowo zadałem pytanie.
    > >Korekta:
    > >1) void Jakaś_Tam_Funkcja(typ* zmienna_1,zmienna_2,....,zmienna_n);
    > >2) void Jakaś_Tam_Funkcja(typ *zmienna_1,zmienna_2,....,zmienna_n);
    > >3) void Jakaś_Tam_Funkcja(typ * zmienna_1,zmienna_2,....,zmienna_n);
    >
    > >Chodzi mi o cały wektor zmiennych. Aha , pominąłem jeszcze to samo jak
    > >wyżej, ale BEZ GWIAZDKI!! Jak to wtedy działa?
    >
    > I nie masz odruchowego wrażenia, ze
    >
    > typ* zmienna_1,zmienna_2,....,zmienna_n
    > oznacza deklaracje n zmiennych każda typu typ*
    >
    > a
    > typ *zmienna_1,zmienna_2,....,zmienna_n
    > oznacza deklaracje zmienna_1 typu typ*, oraz n-1 zmiennych typu typ?
    >
    > Tymczasem obie deklarację robią to samo, znaczy realizują drugi przypadek,
    > dlatego należy trzymać gwiazdki przy zmiennych

    =======

    Otóż mam takie odruchowe wrażenie, ale wolę się upewnić. Piszesz, że należy trymać
    gwiazdki przy zmiennych. Należy, czy trzeba? Przepraszam, moje pytania mogą wydawać
    się irytujące, ale pytam zupełnie serio. Różne "ciekawe" historie przytrafialy mi się
    z wszelakimi narzędziami programistycznymi zarówno w hard i soft.


  • 17. Data: 2016-08-04 11:10:41
    Temat: Re: Pytanko dotyczące C/C++
    Od: Mateusz Viste <mateusz.viste@localhost>

    On 04/08/2016 10:55, s...@g...com wrote:
    > Byle gdzie przeczytałeś parę zdań, a co do meritum tematu nie masz bladego pojęcia.
    Przeczytaj główny wątek !!

    Faktycznie mój błąd - było "opisz różnicą między prototypami po żołniersku".

    To może pl.misc.militaria ?

    Mateusz


  • 18. Data: 2016-08-04 11:26:14
    Temat: Re: Pytanko dotyczące C/C++
    Od: s...@g...com

    W dniu czwartek, 4 sierpnia 2016 10:42:55 UTC+2 użytkownik Ghost napisał:

    >
    > >Nie wiem gdzie zyskujemy na czytelności..
    >
    > Programowanie nie jest dla ciebie :-) Niezależnie od języka.

    Jeżeli takie wnioski wyciągasz na podstawie mojego zdania dotyczącego czytelności
    żródła na podstawie umiejscowienia gwiazdki w lewo/prawo/pośrodku, to zapewne mógłbyś
    L. Armstrongowi pytającemu o kształt klucza wiolinowego udzielić porady: muzyka nie
    jest dla ciebie, niezależnie od instrumentu.

    Dam ci radę: Przestań udzielać rad.


  • 19. Data: 2016-08-04 11:36:42
    Temat: Re: Pytanko dotyczące C/C++
    Od: "J.F." <j...@p...onet.pl>

    Użytkownik stchebel napisał w wiadomości grup
    W dniu czwartek, 4 sierpnia 2016 10:16:47 UTC+2 użytkownik J.F.
    napisał:
    >> Zreszta ... kto nie programowal w PL/1, ten nie wie co to jest
    >> konwersja typow :-)
    >Nie wiem nawet i nie chcę wiedzieć czym jest PL/1. Domyślam się, że
    >tam to dopiero jest Brothel :))

    Powiedzmy tak:
    J=1 ;
    IF J=1 THEN ...

    Myslisz, ze warunek jest prawdziwy ? To sie mylisz.

    >> >Tymczasem w C, możesz zadeklarować nazwę zmiennej gdzie popadnie.
    >> >Nawet zmienną sterującej pętli wewnątrz pętli!! for(int i.. i tak
    >> >dalej) .
    >> >BURDEL jak cholera !! Hahh!!
    >
    >> Jaki burdel ? Zmienna deklarujesz w "bloku" tzn w {}. I w tymze
    >> bloku
    >> obowiazuje.
    > Nie pamietam - a w Pascalu nie jest tak samo ?

    >Prawie tak samo, tylko ciuta porządniej. Nie w bloku {-}/begin-end,
    >lecz w dedykowanym bloku deklaracji zmiennych lokalnych (var), zaraz
    >po deklaracji >funkcji/procedury(w C jest to "void" - boszsz...).
    >Dzięki temu nie ma potrzeby szukania blisko/daleko.. Po prostu
    >wiadomo gdzie szukać

    Dziesiec stron wczesniej na wydruku :-)

    >> Owszem, jakies ambitniejsze konstrukcje wskaznikowo-tablicowe moga
    >> czlowieka dobic, ale coz robic
    >Otóż i to. Nawet tak duperelny temat jak mnożenie macierzy, gdzie
    >traba pamiętać o odjęciu jedynki od numery wiersz/kolumny.

    Po co ? Mnozenie nie wymaga znajomosci nr wiersza czy kolumny.

    A nie pamietam - w Pascalu byla mozliwosc przekazania do funkcji
    tablicy dwuwymiarowej o nieokreslonym rozmiarze ?

    A potem jeszcze napisz procedure odwracajaca macierz ... zespolona.
    Niech zyje Fortran :-)

    >> Nie narzekaj na C. Poznasz C++, to C wyda ci sie idealem :-)
    >Niestety.. Nie poznam.. Jestem niereformowalny, wątek utworzyłem
    >tylko by upewnić się czy rozumiem pewne źródło.

    Kiedys i Pascala rozwina.
    Juz chyba rozwineli (Delphi) :-)

    J.


  • 20. Data: 2016-08-04 11:47:32
    Temat: Re: Pytanko dotyczące C/C++
    Od: "Grzegorz Niemirowski" <g...@p...onet.pl>

    s...@g...com <s...@g...com> napisał(a):
    > Nie chodzi mi o "void". To akurat jest zrozumiałe. Chodzi mi o
    > umiejscowienie "*" w deklaracji zmiennej wejściowej. (typ* zmienna, typ
    > *zmienna, typ * zmienna). A co się tyczy "bogów" z pl.comp.lang.c, to
    > niestety z Bogiem nie pogadasz. Kiedyś wdałem się tam w dyskusję dot.
    > składni C vs. Pascal. Na dobrą sprawę, "filozofia" obu języków jest
    > IDENTYCZNA !! Pomijam takie pierdulamenty jak "begin/{", bądź "end/}", na
    > co głównie młodzianie zwracają uwagę. Ich zdaniem, ten begin/end to syf!!
    > Wgłębiając się jednak ciutę głębiej w C/Pascal, są jednak pewne różnice
    > wynikające chociażby z zapisu i wymiany danych o różnych typach. Pascal
    > jest kurewsko restrykcyjny w typach zmiennych. Nawet na pozomie kompilacji
    > potrafi pokazać środkowy paluch ku górze.

    Ta grupa to nie jest miejsce na wojenki C vs Pascal.

    > W C natomiast, masz możliwość typowania danych, cholernie trzeba z tym
    > uważać. No i kwestia porządku. W swojej biblioteczce mam książki
    > poukładane sensownie. Koziołek Matołek jest na zupełnie innej półce niż
    > Matematyka w Fizyce Klasycznej i Kwantowej/Byron&Fuller. Tymczasem w C,
    > możesz zadeklarować nazwę zmiennej gdzie popadnie. Nawet zmienną
    > sterującej pętli wewnątrz pętli!! for(int i.. i tak dalej) . BURDEL jak
    > cholera !! Hahh!!

    No właśnie porządek jest. Widzisz wyraźnie, że ta zmienna należy do tej
    pętli i jest niewidoczna poza nią. Przecież deklarowanie jej poza pętlą to
    tak jak deklarowanie zmiennej globalnej w stosunku do zmiennej
    zadeklarowanej wewnątrz funkcji.

    Jest też w C jakiś tam zapis(jednolinijkowy), którego
    > treść jest taka: Jeżeli a<b, to zrób "A", jeżeli a=b, to zrób "B", jeżeli
    > a>b, to zrób "C". Nie pamiętam dokładnie tej składni, ale jest coś takiego
    > w C, i jest to bardziej pojebane niż zapis całej tej procedury w

    Chyba masz na myśli ternary conditional (a ? b : c), który zwraca b jeśli
    jest a jest prawdą lub c jeśli a jest fałszem. Jest to bardzo przydatne i
    nie wiem o co się czepiasz.

    > Assemblerze.
    > A idę o zakład , że:
    > 1) Każdy algorytmista czytając żródło w Pascalu, zrozumie o co chodzi
    > 2) Czytając żródło C - będzie czkawka :))

    Najpierw zrozum C, a potem pisz emocjonalne posty.

    --
    Grzegorz Niemirowski
    http://www.grzegorz.net/
    OE PowerTool i Outlook Express: http://www.grzegorz.net/oe/
    Uptime: 8 days, 12 hours, 17 minutes and 38 seconds

strony : 1 . [ 2 ] . 3 ... 6


Szukaj w grupach

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: