eGospodarka.pl
eGospodarka.pl poleca

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

  • 1. Data: 2016-08-04 08:09:07
    Temat: Pytanko dotyczące C/C++
    Od: s...@g...com

    Może trochę NTG, ale chyba prędzej tutaj uzyskam konkretną odpowiedź, niż na grupie
    "BOGÓW" od C/C++. Jak wiecie, mam trochę wstręta do C, ale nie w tym rzecz. Prośba:
    Napiszcie mi w kilku "żołnierskich" słowach jaka jest różnica/jak to interpretować:

    1) void Jakaś_Tam_Funkcja(int* Jakaś_Tam_Zmienna);
    2) void Jakaś_Tam_Funkcja(int *Jakaś_Tam_Zmienna);
    3) void Jakaś_Tam_Funkcja(int * Jakaś_Tam_Zmienna);

    =============

    Tematy softwarowe zlecam fachowcom, ale muszę(ino z ciekawości) rozgryźć pewne źródło
    programistyczne, które z pewnych powodów muszę zaimplementować (już zrobione) na
    sztywno w hardware. Na 100% da się wiedząc od strony matematycznej w czym rzecz.
    Skoro się da, skoro jest znany model matematyczny, no to kurka wódka po cholerę mi
    soft i uC/uP (w tej konkretnej aplikacji, uC/uP to bardzo pożyteczne stworzenia w
    wielu sytuacjach),trochę posiedziałem nad projektem i jest OK.

    A pytanie/o co marudzę? Ot z czystej ciekawości...

    To chyba jest "elementarz" C, ale pytanie zupełnie serio, nie robię sobie tutaj jaj
    !!


  • 2. Data: 2016-08-04 08:22:23
    Temat: Re: Pytanko dotyczące C/C++
    Od: Mateusz Viste <mateusz.viste@localhost>

    On 04/08/2016 08:09, s...@g...com wrote:
    > Może trochę NTG, ale chyba prędzej tutaj uzyskam konkretną odpowiedź, niż na grupie
    "BOGÓW" od C/C++. Jak wiecie, mam trochę wstręta do C, ale nie w tym rzecz. Prośba:
    Napiszcie mi w kilku "żołnierskich" słowach jaka jest różnica/jak to interpretować:
    >
    > 1) void Jakaś_Tam_Funkcja(int* Jakaś_Tam_Zmienna);
    > 2) void Jakaś_Tam_Funkcja(int *Jakaś_Tam_Zmienna);
    > 3) void Jakaś_Tam_Funkcja(int * Jakaś_Tam_Zmienna);

    Różnica: żadna. Wszystkie trzy prototypy są jednoznaczne, i deklarują
    funkcję która nic nie zwraca, a która jako parametr oczekuje wskaźnika
    do inta - a czym jest int, to już zależy od platformy - ANSI mówi tylko
    że ma mieć co najmniej 16 bitów.

    Temat bardziej na pl.comp.lang.c swoją drogą (a tamtejsi "bogowie" wcale
    nie gryzą!).

    Mateusz


  • 3. Data: 2016-08-04 08:41:44
    Temat: Re: Pytanko dotyczące C/C++
    Od: "Ghost" <n...@d...pl>



    Użytkownik napisał w wiadomości grup
    dyskusyjnych:c668b776-b84c-427e-9ec5-92058735710a@go
    oglegroups.com...

    >To chyba jest "elementarz" C, ale pytanie zupełnie serio, nie robię sobie
    >tutaj jaj !!

    Na Twoje pytanie już padła odpowiedz, w ramach rozszerzenia:

    deklaracje

    int *a, b;
    i
    int* a, b;

    też są równoważne, ale z drugiej ktoś niedoświadczony (choć niekoniecznie)
    mógłby wywnioskować, że obie zmienne to wskaźniki.
    Zatem skoro * dotyczy tylko elementu tuż za znakiem, to przytulajmy go doń,
    na pewno zyskujemy na czytelności.


  • 4. Data: 2016-08-04 09:24:46
    Temat: Re: Pytanko dotyczące C/C++
    Od: s...@g...com

    W dniu czwartek, 4 sierpnia 2016 08:22:09 UTC+2 użytkownik Mateusz Viste napisał:
    > On 04/08/2016 08:09, s...@g...com wrote:
    > > Może trochę NTG, ale chyba prędzej tutaj uzyskam konkretną odpowiedź, niż na
    grupie "BOGÓW" od C/C++. Jak wiecie, mam trochę wstręta do C, ale nie w tym rzecz.
    Prośba: Napiszcie mi w kilku "żołnierskich" słowach jaka jest różnica/jak to
    interpretować:
    > >
    > > 1) void Jakaś_Tam_Funkcja(int* Jakaś_Tam_Zmienna);
    > > 2) void Jakaś_Tam_Funkcja(int *Jakaś_Tam_Zmienna);
    > > 3) void Jakaś_Tam_Funkcja(int * Jakaś_Tam_Zmienna);
    >
    > Różnica: żadna. Wszystkie trzy prototypy są jednoznaczne, i deklarują
    > funkcję która nic nie zwraca, a która jako parametr oczekuje wskaźnika
    > do inta - a czym jest int, to już zależy od platformy - ANSI mówi tylko
    > że ma mieć co najmniej 16 bitów.
    >
    > Temat bardziej na pl.comp.lang.c swoją drogą (a tamtejsi "bogowie" wcale
    > nie gryzą!).
    >

    ===========

    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.

    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!! 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 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 :))


  • 5. Data: 2016-08-04 09:40:51
    Temat: Re: Pytanko dotyczące C/C++
    Od: s...@g...com

    W dniu czwartek, 4 sierpnia 2016 08:43:02 UTC+2 użytkownik Ghost napisał:
    > Użytkownik napisał w wiadomości grup
    > dyskusyjnych:c668b776-b84c-427e-9ec5-92058735710a@go
    oglegroups.com...
    >
    > >To chyba jest "elementarz" C, ale pytanie zupełnie serio, nie robię sobie
    > >tutaj jaj !!
    >
    > Na Twoje pytanie już padła odpowiedz, w ramach rozszerzenia:
    >
    > deklaracje
    >
    > int *a, b;
    > i
    > int* a, b;
    >
    > też są równoważne, ale z drugiej ktoś niedoświadczony (choć niekoniecznie)
    > mógłby wywnioskować, że obie zmienne to wskaźniki.


    > Zatem skoro * dotyczy tylko elementu tuż za znakiem, to przytulajmy go doń,
    > na pewno zyskujemy na czytelności.

    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.


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

    W dniu czwartek, 4 sierpnia 2016 08:22:09 UTC+2 użytkownik Mateusz Viste napisał:

    >
    > Temat bardziej na pl.comp.lang.c swoją drogą (a tamtejsi "bogowie" wcale
    > nie gryzą!).
    >

    OK, zapytam


  • 7. Data: 2016-08-04 09:53:17
    Temat: Re: Pytanko dotyczące C/C++
    Od: ajt <a...@a...com.pl>

    W dniu 2016-08-04 o 09:24, s...@g...com pisze:
    > 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).

    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 ...

    > 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 :))
    >
    Dawno temu miałem zajęcia z nieżyjącym już niestety Janem Bieleckim. Na
    zaliczenie trzeba było zrobić erratę do jego kolejnej książki o C czy
    C++. Po dokładnym przeanalizowaniu kilkudziesięciu pokręconych
    przykładów (a JB lubił wymyślać różne dziwolągi składniowe) i
    znalezieniu sporej liczby błędów nie miałem już problemów z rozumieniem
    źródeł :)
    --
    Pozdrawiam
    Andrzej www.radom.city


  • 8. Data: 2016-08-04 10:16:38
    Temat: Re: Pytanko dotyczące C/C++
    Od: "J.F." <j...@p...onet.pl>

    Użytkownik stchebel napisał w wiadomości grup
    >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.

    >W C natomiast, masz możliwość typowania danych, cholernie trzeba z
    >tym uważać.

    To jest koniecznosc.
    Zreszta teraz w C++/C# enuma sp* maksymalnie ... a moze tak ma byc,
    dlugosc tekstu sie nie liczy.

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

    >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 ?

    >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 :))

    Niewatpliwe w C, da sie napisac program w sposob bardzo zagmatwany.
    Ale po co to robic ? Mozesz pisac rownie elegancko jak w Pascalu.

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

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

    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 ..

    J.


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

    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


  • 10. Data: 2016-08-04 10:18:31
    Temat: Re: Pytanko dotyczące C/C++
    Od: s...@g...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?

strony : [ 1 ] . 2 ... 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: