Skocz do zawartości
Forum Kopalni Wiedzy

darekp

Użytkownicy
  • Liczba zawartości

    1259
  • Rejestracja

  • Ostatnia wizyta

  • Wygrane w rankingu

    33

Odpowiedzi dodane przez darekp


  1. 1 godzinę temu, Jajcenty napisał:

    większość moich programów zaczynała się 

    int main( int argc, char** argv) {...}

    Tak, bo do main jest przekazywana tablica wskaźników, a nie tablica dwuwymiarowa. To są dwa różne typy dla kompilatora.

     

    1 godzinę temu, Jajcenty napisał:

    Na pewno da się znaleźć zastosowanie i dla trzeciej gwiazdki

    Oczywiście, że się da. Jedna gwiazdka to wskaźnik, dwie gwiazdki to wskaźnik do wskaźnika, trzy to wskaźnik do wskaźnika do wskaźnika itd. Mam w pracy kolegę, który w żartach w zależności od liczby gwiazdek używa odpowiednich stopni wojskowych, cztery gwiazdki to zdaje się generał i on twierdzi (możliwe, że od kogoś to słyszał), że w praktyce w kodzie wskaźników powyżej generała się nie spotyka:)

     

    P.S. Kompilujący się pod Visual Studio przykład (C++):

    const char tablica2d[][20] = {"ala", "ola"};
    const char *argv[] = { "ala", "ola" };
    
    int main()
    {
    	const char *p1 = tablica2d[1];
    	const char **p2 = argv;
    	const char ***p3 = &p2;
    	const char ****general = &p3;
    	return 0;
    }

    Ale spróbuj dla któregoś z tych wskaźników zrobić przypisanie, w którym po prawej stronie jest tablica2d - nie da się.

    2 godziny temu, Jajcenty napisał:

    Nie pamiętam już tylko czy przy inkrementacji wskaźnika kompilator umiał uwzględnić rozmiar własnych typów (struct czy union) czy trzeba było dodawać sizeof()

    Uwzględniał rozmiar. Bezdyskusyjnie.

     


  2. Tak, ale tu operujesz na wskaźnikach "jednogwiazdkowych" a przy wyższej liczbie gwiazdek to chyba był jakiś problem.

    P.S. Bo to są różne sytuacje, gdy inkrementujesz wskaźnik do wskaźnika lub wskaźnik do tablicy (różny sizeof na ogół). Ale nie wykluczam, że rzeczywiście kiedyś dawno temu tego nie zrozumiałem.

    P.S.2 Sprawdziłem u mnie Visual Studio przy takim kodzie

    int t[10][10];
    int main()
    {
        int **p = t;
        return 0;
    }

    wywala błedy:

    Cytat

    a value of type "int (*)[10]" cannot be used to initialize an entity of type "int **"

    'initializing': cannot convert from 'int [10][10]' to 'int **'

     

    Prawidłowy kod to:

    int t[10][20];
    int main()
    {
        int (*p)[20] = t;
        return 0;
    }

    (i te nawiasy okrągłe otaczające p są tu niezbędne, bez nich kompilator zinterpretowałby "p" jako tablicę dziesięciu wskaźników).

    • Pozytyw (+1) 1

  3. 2 godziny temu, Jajcenty napisał:

    Jak widzę zapis typu int *** to wiem, że popłynąłem. choć właściwie, tablica tablic - dlaczego nie?

    Mi jakoś te rzeczy "podchodziły", lubiłem książki Jana Bieleckiego (pamiętne **++p--->ref chociażby). Aczkolwiek teraz już nie jestem pewien, czy dobrze pamiętam różne niuanse. Btw trzy gwiazdki to raczej chyba nie pójdzie jako tablica tablic, tylko jedna gwiazdka była z grubsza równoważna tablicy, resztę trzeba było już "pobożnie" zapisywać jako [] z tego co pamiętam.

    Czyli int *[] albo int []* (nie jestem pewien kolejności, ale chyba pierwsze). :)


  4. 11 godzin temu, peceed napisał:
    14 godzin temu, darekp napisał:

    Szczerze mówiąc mnie czasem nachodzi chęć, żeby wrócić do tego C i jeszcze coś w nim poprogramować. Bardziej niż do C++.

    Tego nie rozumiem. Ręczna gospodarka pamięci, brak izolacji błędów które stają się "magiczne"...

    Po prostu sprawia mi frajdę pisanie czegoś, co jest wydajne. Ręczna gospodarka pamięci nie zawsze jest taka straszna, zazwyczaj można sobie tak zorganizować kod, że ryzyko błędów z nią związanych jest nieduże. Fakt, że w C++ pod tym względem są "luksusy", bo można używać smart-pointerów itp. 

    Kwestia obsługi błędów chyba nigdzie (w żadnym jęz. programowania) nie została dobrze rozwiązana (może po prostu nie da się). Try...catch jest dobre w przypadku, gdy można w nie wsadzić cały kod obsługi czegoś i w catch-u zalogować/wyświetlić treść błędu i potem iść dalej albo zatrzymać proces. Jeśli wdepnąć w coś bardziej skomplikowanego (np. zagnieżdżone try...catch) to rychło dochodzi się do poczucia, że szkoda, że nie można tego łatwo przerobić na coś w rodzaju discriminated union z języków funkcyjnych (explicite wymienione wszystkie możliwości, kompilator pilnuje, żebyś je wszystkie obsłużył). Przynajmniej takie mam doświadczenie - niedawno gdzieś przeczytałem, że w Pythonie często używa się wyjątków, może warto byłoby żebym więcej używał Pythona, może wtedy by mi się wyklarowało jakieś inne spojrzenie na sprawę, ale na razie  mam wrażenie że te wyjątki w Pythonie są używane do jakichś specyficznych zastosowań (widziałem przykład użycia wyjątku do przerwania iteracji i to wyglądało tam na uzasadnione użycie).


  5. 24 minuty temu, Jajcenty napisał:

    Przy okazji: C bardzo awansował przez lata, na polskiej wiki napisali, że to język wysokiego poziomu, a przecież mam w pamięci obraz strony

    Nie wiem, czy to ma związek, ale sam język też się rozwinął, pierwsze wersje miały jakiś mechanizm domyślnego przyjmowania typu int (gdzieś czytałem, że po to, żeby ułatwić kompilowanie starego kodu Unixa pisanego w języku B), możliwość opuszczania listy parametrów w deklaracji funkcji. A potem weszło solidniejsze sprawdzanie typów i takie rzeczy jak void i void * :)

    Szczerze mówiąc mnie czasem nachodzi chęć, żeby wrócić do tego C i jeszcze coś w nim poprogramować. Bardziej niż do C++. :)


  6. 19 minut temu, cyjanobakteria napisał:

    Jeżeli chodzi o ilość podatności, błędów związanych z bezpieczeństwem, szczególnie z operacjami na pamięci, to niekwestionowanym(!) liderem jest C - język statycznie typowany

    Hm, aż ciekawości zagooglowałem i pierwszy link jaki znalazłem mówi coś innego: 

    https://developers.slashdot.org/story/18/01/01/0242218/which-programming-languages-are-most-prone-to-bugs

    Nie czytałem pracy źródłowej (mocne niedobory w zasobie o nazwie czas;)) ale z tego króciutkiego wpisu wynika, że niespecjalnie jest ważny rodzaj typowania, za to liczy się funkcyjność.


  7. @tempik Ale mumie w muzeach są. Trochę innych podobnych rzeczy też bywa przechowywanych (relikwie świętych w kościołach, pewnie jeszcze jakieś przykłady się znajdą). Więc nie rozumiem, dlaczego jest problem z uszanowaniem odmienności kultury Indian, którzy tworzyli pomniejszone głowy. Dla mnie to naturalne, że gdy spotykamy się z inną kulturą, to będą odmienności w niektórych sprawach i wtedy trzeba te odmienności uszanować (no, do pewnej granicy, bo są sytuacje typu oblewanie kobiet kwasem za nieposłuszeństwo, tego nie zaakceptuję, ale tutaj nie mamy do czynienia z takim przypadkiem). Ci zabici wrogowie nie cierpią z tego powodu, że ich głowy pomniejszono (no dobra, Indianie z plemienia Shuar mają temat do przemyśleń i podjęcia jakiegoś działania, jeśli nadal wierzą, że w tych głowach są uwięzione ludzkie dusze, ale nie o to chodzi w tym wątku).

    P.S. Jak dla mnie to problemem nie są eksponaty, tylko ci goście muzealni, którzy nie potrafią zrozumieć odmienności innych kultur i jej uszanować (po raz trzeci musiałem użyć tego słowa, ech).


  8. 2 godziny temu, Warai Otoko napisał:

    Po raz kolejny nie możemy się dogadać bo zmieniasz temat dyskusji. @Jajcenty zaczął kwestionować definicję informacji wg Mazura,. nie chciał daleć prowadzić dyskusji a ty się włączyłeś do TEGO TEMATU. A teraz piszesz mi o ZZI i ZZE w odpowiedzi na dysksuje dot. słuszności lub nie def. informacji... WTF? Nie o tym rozmawiamy od kilku postów... 

    Nie mam dzisiaj czasu na dyskusje na forum, ale wydaje mi się, że tu chodzi o coś głębszego, jeśli chcemy zająć się jakimiś "badaniami podstawowymi" na poziomie powiedzmy fizyki i formułować ZZI, ZZE itp. to potrzebujemy jakiejś prostszej definicji informacji niż ta Mazura. Definicji, która ma coś wspólnego z energią, stanem układu fizycznego itd. itp.

    2 godziny temu, Warai Otoko napisał:

    Po raz kolejny nie możemy się dogadać bo zmieniasz temat dyskusji. @Jajcenty zaczął kwestionować definicję informacji wg Mazura,. nie chciał daleć prowadzić dyskusji a ty się włączyłeś do TEGO TEMATU. A teraz piszesz mi o ZZI i ZZE w odpowiedzi na dysksuje dot. słuszności lub nie def. informacji... WTF? Nie o tym rozmawiamy od kilku postów... 

    Nie mam dzisiaj czasu na dyskusje na forum (więc może czegoś nie doczytałem), ale wydaje mi się, że tu chodzi o coś głębszego, jeśli chcemy zająć się jakimiś "badaniami podstawowymi" na poziomie powiedzmy fizyki i formułować ZZI, ZZE itp. to potrzebujemy jakiejś prostszej definicji informacji niż ta Mazura. Definicji, która ma coś wspólnego z energią, stanem układu fizycznego itd. itp.

    P.S. Oczywiście inna sprawa, czy o rzeczywiście chcemy dyskutować o ZZI, wydawało mi się, że ex nihilio i Jajcenty chcą (ja też), ale może czegoś nie doczytałem.

    • Pozytyw (+1) 1

  9. 17 minut temu, Warai Otoko napisał:

    Jak na razie to tylko Mazur podał jakąś sensowną, matematyczną definicję informacji ujmąc jej charaketer jakościowy (ilościowo było wcześniej, ale to nie wyjaśniało wszystkiego), więc nie mógł nic skomplkowac bo jaka niby była ta prostsza definicja? 

    A gdzie w takim razie jest ta definicja, bo w linku do Wikipedii, który podałeś, jej nie ma, jest tylko jakaś wzmianka o Mazurze i po dalszym klikaniu jeszcze zdanie, że wprowadził bodajże sześć rodzajów informacji?


  10. 3 godziny temu, ex nihilo napisał:

    Rozwalając to "koło wodne" zmieniasz konfigurację pół, ale nie niszczysz informacji o "kole wodnym", bo jej tam nie było. Taka informacja istniała tylko w głowie Twojej, młynarza, któremu spieprzyłeś narzędzie pracy i może będzie istnieć w głowie sędziego, który zasądzi odszkodowanie... :P

    Wow. To jest IMHO najwięcej dający do myślenia punkt widzenia w tej dyskusji (w przeciwieństwie do "mazurzenia", komplikowania definicji itp. - bez obrazy;))

    P.S. Ale Warai Otoko, tudzież młynarz i sędzia, to też tylko zbiory atomów, które (te atomy) nic nie wiedzą o "kole wodnym", "rzece" i "pobieraniu energii". Czy z tego powodu nie powstaje jakaś trudność w rozważaniach, tzn. np. wniosek, że informacja nie istnieje w ogóle? (Piszę to na szybko, bez zastanowienia, możliwe, że gdy sobie na spokojnie przemyślę, to sam sobie odpowiem).


  11. Godzinę temu, Warai Otoko napisał:

    Na samym końcu jest mowa o bardzo ciekawej teorii matematycznej o której nie wiedziałem - teorii kategorii.

    Może komuś się przyda -  wykład z teorii kategorii w wersji dla informatyków: http://xahlee.info/math/i/category_theory_brendan_fong_david_spivak_2018-03.pdf

    Zdaje się, że fajnie i przystępnie napisany. Przechowuję link do niego od dawna z zamiarem, żeby obowiązkowo go przeczytać, jak tylko znajdę czas (a z tym jak wiadomo zawsze najgorzej :))

    • Dzięki! (+1) 2

  12. 19 godzin temu, venator napisał:

    Tyle, że nie ma jeszcze takiego superkomputera, który przewidziałby nieracjonalność ludzkich zachowań. 

    Co do tego w pełni zgoda.

    Jakoś nie chce mi się wierzyć, że wolnorynkowi ekonomiści angażują się w jakąś "naukę ścisłą" w taki sposób, jak opisujesz. Słyszałem o innym przypadku, gdy grupa ekonomistów wzięła się za poważne modelowanie gospodarki metodami matematycznymi i za każdym razem wychodziła im wyższość centralnego planowania nad wolnym rynkiem, mimo że sami w to nie wierzyli (to było ok. 20-25 lat temu). ;)

    To, co robią ekonomiści, to posługiwanie się uproszczonymi modelami, jakimiś wskaźnikami (PKB, bezrobocie, inflacja, wielkość produkcji czegoś tam itd. itp.). Nie można tego traktować w pełni poważnie, bo prędzej czy później odegra rolę jakiś czynnik nie uwzględniony w modelu. To są tylko przybliżenia. Grzegorz Kołodko (profesor ekonomii, co by nie mówić) będzie zwracał uwagę na inne wskaźniki, niż jakiś profesor wolnorynkowy i inaczej je interpretował. I to nie wynika z tendencyjności któregoś z nich (w każdym razie nie tylko z tendencyjności), ale z tego jak oni postrzegają świat.

    Tak że IMHO tu nie może być mowy o żadnej "nauce ścisłej". Gdyby chcieć superkomputerem przewidywać ludzkie zachowania, to on przypuszczalnie musiałby modelować cały Wszechświat, łącznie ze zjawiskami kwantowymi itd. (a i tak nie ma gwarancji, że to by wystarczyło, bo nie wiemy, czy świat jest deterministyczny, mechanika kwantowa sugeruje, że nie).

    P.S. Taki przykładzik, gdyby nos Kleopatry miał inną długość, to historia ludzkości potoczyłaby się inaczej - ile teorii ekonomicznych uwzględnia rozmiary nosów? :D


  13. 3 godziny temu, ex nihilo napisał:

    Raczej nic z tego :D
    1. co to znaczy "w danym momencie"? Im dokładniej będziesz określał ten "moment", tym bardziej będzie Ci się rozmywała energia.
    2. im dokładniej będziesz mierzył położenie, tym mniej będziesz wiedział o pędzie.

    Jak dla mnie, to zgoda, ale o czym w takim razie (pytanie laika) pisał autor na kwantowo.pl? Jest jakaś "zasada zachowania informacji" w fizyce, czy jej nie ma? Zajmował się nią Hawking, czy nie? Bo jeśli wziąć pod uwagę mech. kwantową, nieliniowości itd. to powstaje wrażenie, że informacja bardzo szybko ginie i nikomu nawet nie powinien przyjść do głowy pomysł, żeby taką zasadę formułować.

    P.S. Zajrzałem do kilku artykułów z

    3 godziny temu, ex nihilo napisał:

    Wygląda na to, ze to same teksty "opowiadane" bez żadnych wzorów matematycznych. Same słowa. Ponieważ słowa z mowy potocznej są nieprecyzyjne i każde ma co najmniej dwie interpretacje, to liczba możliwych interpretacji takich tekstów przekracza pewnie liczbę atomów we Wszechświecie :D Chyba zaczynam rozumieć, że "zasada zachowania informacji" to nie żadna ścisła fizyka tylko coś o czym sobie fizycy dyskutują przy kawie/piwie dla zabicia czasu :D

    P.S. Jeśli samemu pogugłować, to mozna znaleźć nawet coś takiego: https://www.youtube.com/watch?v=SndpeBvxC88 - kolega po fachu Warai Otoko zdaje się ;P

    Nawet nie próbowałem się zmusić, żeby to słuchać ;P

    • Pozytyw (+1) 1

  14. 4 minuty temu, Warai Otoko napisał:

    Chodzi po rpostu o entropię, a nie o informację

    Hm, napisano też:

    Cytat

    Jednak mimo to, nie istnieje fizyczny powód, dla którego nie dałoby się zrekonstruować rozbitego wazonu czy rozerwanej gwiazdy. Posiadając ultranowoczesny komputer analizujący stan każdej pojedynczej cząstki, hipotetycznie moglibyśmy odtworzyć dzieje dowolnego obiektu. To podstawa arcyważnej zasady zachowania informacji.

    Ja to interpretuję tak, że widocznie, przynajmniej w niektórych modelach teoretycznych, mając dokładne informacje o układzie fizycznym w danym momencie, można prześledzić jego historię historię wstecz i w przyszłość w czasie (mając szczątki rozbitego wazonu, znając ich prędkości itp. można odtworzyć jego wygląd przed rozbiciem). To wygląda jak pełna informacja raczej (w intuicyjnym sensie).


  15. 11 minut temu, Warai Otoko napisał:

    ale Panowie fizycy raczej nie sa najlepsi jeśli chodzi o informację (tylko energię i materię),

    Nie znam szczegółów, ale gdzieś czytałem (jakaś bardzo popularnonaukowa książka z fizyki, nie pamiętam jaka), że np. to, że czarna dziura niszczy informację, przeszkadza teoretykom w jakichś rozważaniach teoretycznych i oni w to w jakiś sposób "nie wierzą", tzn. spodziewają się, że po odpowiednim poprawieniu teorii okaże się, że z czarnej dziury można odzyskać informację, która do niej wpadła. Może nawet tego nie zrozumiałem, może chodziło o coś innego, ale tak przy okazji mi się przypomniało.

    P.S. Możliwe, że chodziło o jakieś trajektorie w przestrzeni fazowej, że coś się skleja, a nie powinno, czy jakoś tak(???)


  16. 2 godziny temu, ex nihilo napisał:

    Może już czas zacząć się przyzwyczajać:

    Ciekawa sprawa, w pewnym momencie widać, że człowiek ogląda twarz kobiety, a sieć neuronowa odtwarza ją jako twarz mężczyzny. Czyli sieć dopasowuje do tego, czego się wcześniej "naumiała". Przychodzi mi do głowy mnóstwo "fajnych" skojarzeń w kontekście niedawno przypomnianego w innym wątku pana Orwella, ech ;(


  17. Można jeszcze nosić "po samurajsku" - zatknięty za pasem, ostrzem do góry ;) Nie wiem, czy są jeszcze inne możliwości oprócz tych trzech (zresztą zdaje się, że początkowo samuraje też tak nie nosili, tylko w wersji "dyndającej" - gdzieś tak czytałem i widziałem na którymś filmie Kurosawy - więc niezbyt poważne źródła informacji;))

    P.S. Katana w sumie to nie miecz więc trochę wyszedłem poza temat ;)


  18. Ja znalazłem takie rozważania na ten temat, nie miałem czasu odsłuchać, ale oględziny kilku początkowych minut filmu sugerują, że jest to kiepskie rozwiązanie:

    https://www.youtube.com/watch?v=kHLG_fZVFzo

    Zresztą kołata mi się po pamięci, że twórcy "Wiedźmina" (gry) też mieli problem ze zrealizowanieniem scen wyjmowania miecza tak, żeby wyglądało to realistycznie (i na youtubowych filmach z gry wygląda ten moment IMHO na lekko "oszukiwany").

     


  19. 17 godzin temu, venator napisał:

    Kryzysy są immanetną cechą dlatego, że ludzie nie mają pełnego dostępu do informacji, co jest zaprzeczeniem idei wolnego rynku.

    Dla przykładu - wielki kryzys 1929-33 zaczął się od masowej wyprzedaży akcji, panicznej reakcji wynikającej z braku dostępu do pełnej informacji (przede wszystkim u drobnych akcjonariuszy, tzw. ciułaczy).

    Kryzysy są jakoś powiązane z sytuacjami, gdy pewne "towary" np. akcje są przewartościowane (przynajmniej na moje wyczucie - nie znam jakiejś naprawdę dobrej analizy ekonomicznej wyjaśniającej, kiedy powstają kryzysy, zresztą zapewne gdyby takowa istniała, dałoby się unikać kryzysów;)). A pewność co do tego, że coś jest przewartościowane, posiadają tylko Bóg (o ile istnieje) i posiadacze wehikułów czasu (bo mogą polecieć do przyszłości i dowiedzieć się, że coś było bańką spekulacyjną) ;) Jawność informacji w takim sensie o jakim tu rozmawiamy nie daje Ci możliwości uniknięcia kryzysu. Zresztą bardzo często wiele z potrzebnych informacji jest w miarę dobrze dostępnych przed wybuchem kryzysu i... on jednak wybucha. Bańkę spekulacyjną na kryptowalutach sprzed kilku lat można było sobie obserwować dość dobrze, mnóstwo informacji było jawnych i nie zapobiegło to krachowi. Kryzys 2008 roku też część ekonomistów dobrze przewidywała, ale byli lekceważeni, dopiero post factum wszyscy osiągnęli zgodność zdań w tej sprawie;)


  20. 2 godziny temu, ex nihilo napisał:

    W zasadzie prywatność to bardziej idea lub złudzenie niż rzeczywistość.

    Brak prywatności w takim razie też. Po pierwsze trzeba by go zdefiniować (nie wiem, czy wszyscy zgadzają się z definicją prywatności z Wikipedii, a nawet jeśli, to i tak ta definicja jest mocno "nieostra" w wielu kwestiach). Po drugie nie wiadomo, jak go wprowadzić. Bo Świat Całkowitej Jawności pana Grabarczyka jest w praktyce niemożliwy do zrealizowania z tej prostej przyczyny, że trzyliterowe agencje wszystkich krajów nie dopuszczą, aby było ujawnione, co one robią. Więc da się co najwyżej "wytłumaczyć" społeczeństwu (aka "ciemnemu ludowi"), że jawność oczywiście tak, wprowadzamy, ale z wyłączeniem rządu, sejmu, policji, instytucji rządowych, wojska itp. A wtedy to już bliżej do pana Orwella niż do pana Grabarczyka.


  21. 17 minut temu, Astro napisał:

    Może i da... Globalny Wielki Brat?

    Dr Grabarczyk przewidział, że będzie się kojarzyć z Orwellem, cytuję:

    "Panoptikon Benthama i wizja Wielkiego Brata z 1984 Orwella) ukazują mechanizm zorganizowanego na skalę mniej lub bardziej masową transferu tajności – więźniowie nie wiedzą, że są podglądani, a mieszkańcy orwellowskiego państwa, choć z bycia obserwowanymi zdają sobie sprawę, nie mogą oglądać zapisów ze swojego życia ani obserwować funkcjonariuszy Policji Myśli. Tajemnice jednych i drugich nie przestają być tajemnicami, zaczynają być jedynie tajemnicami urzędowo rozszerzonymi o anonimowego powiernika. Nic podobnego nie zachodzi w ŚJC – nikt, w szczególności żaden rząd, nie jest w jakikolwiek sposób uprzywilejowany i każdy może swobodnie obserwować każdego."

    Ale nawet nie chce mi się powyższego komentować, tzn. to brzmi w najlepszym razie jak utopia.

×
×
  • Dodaj nową pozycję...