Treść przeznaczona dla osób powyżej 18 roku życia...
Wszystko
Najnowsze
Archiwum
- 0
@pkh:
Z tym transcount - not tak, skad bym wiedzial ile razy petle for wykonac, obviously!
Dzieki za wyjasnienie tej petli.
Nie do konca jednak rozumiem, co w ten GetNextEvent wpisac?
Bo z tego co zrozumialem, funkcja wywolana przez pointer trans[]i.fn ustawia mi nastepny stan, po tym jak wykona inne
Z tym transcount - not tak, skad bym wiedzial ile razy petle for wykonac, obviously!
Dzieki za wyjasnienie tej petli.
Nie do konca jednak rozumiem, co w ten GetNextEvent wpisac?
Bo z tego co zrozumialem, funkcja wywolana przez pointer trans[]i.fn ustawia mi nastepny stan, po tym jak wykona inne
- 0
@jansek: I dokladnie tak sie dzieje.
Jestes w stanie INIT. I teraz dostajesz event EV. Teraz sprawdzasz wszystkie wpisy w tablciy trans, i szukasz takiego który ma stan INIT i event na EV. Wtedy wykonujesz jego funkcje, który zmienia stan na inny.
Przemysl sobie to ze w maszynie stanow, stan w jakim obecnie jestes ma wplyw na to jak event bedzie obsluzony.
Jestes w stanie INIT. I teraz dostajesz event EV. Teraz sprawdzasz wszystkie wpisy w tablciy trans, i szukasz takiego który ma stan INIT i event na EV. Wtedy wykonujesz jego funkcje, który zmienia stan na inny.
Przemysl sobie to ze w maszynie stanow, stan w jakim obecnie jestes ma wplyw na to jak event bedzie obsluzony.
Byłby ktoś tak miły i wyjaśni mi, jaka jest różnica między short, long, signed, unsigned, itd. oraz z kombinacjami long signed int?
#naukaprogramowania #jezykc
#naukaprogramowania #jezykc
konto usunięte via Android
- 7
Google...
@Hertesus: Me to, u should use dictionary, for example google translate. It work's simple, u have to copy a part of text and paste in google translate window and u may change language on Polish and it's done.
A tak na poważnie to w każdym szanującym się wstępie do programowania i w opisie języka jest opis typów podstawowych i tam znajdziesz odpowiedzi na te turbo podstawowe pytania.
A tak na poważnie to w każdym szanującym się wstępie do programowania i w opisie języka jest opis typów podstawowych i tam znajdziesz odpowiedzi na te turbo podstawowe pytania.
Mireczki kochane, muszę zrobić serializację w C++. Konkretnie mam dość rozbudowaną klasę, jej obiekt chcę przy starcie programu odczytywać z pliku, a przy końcu do niego zapisywać. Jest jakiś sprawdzony sposób, żeby to zrobić? Z tego co wiem, to takie chamskie zmapowanie na dysk nie zadziała, bo kompilator sobie optymalizuje ułożenie w pamięci.
#programowanie #cpp i w sumie też #jezykc
#programowanie #cpp i w sumie też #jezykc
- 2
@CamelCase: no ale to bez packed tez by ci dzialalo na tej samej binarce..
- 3
@CamelCase: no i pamietaj, ze jesli klasa ma virtualne metody, to "prawdopodobnie" (standard nie gwarantuje) na początku struktury masz vptr'y i jak ze wszystkimi wskaznikami nie powinienes robic robic ich płytkiej kopii.
- 2
#c #jezykc #programowanie
Mam pytanie. Mam w tablicy znaków taka wartosc "insert 5"
Chcę wywołać sscanf który pobierze liczbę z danej linii/tablicy znaków, w tym przypadku 5.
zaglądam do podręcznika i wyszło mi że powinienem coś takiego napisać
sscanf(instructions[i], "%[0-9]d", &arg); ale do arg wczytuje mi 0 a nie 5. w instructions[i] jest "insert 5".
jak wczytać pierwszą liczbę z danej linii ?
Mam pytanie. Mam w tablicy znaków taka wartosc "insert 5"
Chcę wywołać sscanf który pobierze liczbę z danej linii/tablicy znaków, w tym przypadku 5.
zaglądam do podręcznika i wyszło mi że powinienem coś takiego napisać
sscanf(instructions[i], "%[0-9]d", &arg); ale do arg wczytuje mi 0 a nie 5. w instructions[i] jest "insert 5".
jak wczytać pierwszą liczbę z danej linii ?
http://www.cplusplus.com/reference/cstdio/scanf/
obstawiam cos takiego:
sscanf(ciag_znakow, "%*[^0-9] %i", &value);
* - pomin, nie musimy dostarczac zmiennej dla tego co odczytamy
[^0-9] - wszystko poza cyframi
obstawiam cos takiego:
sscanf(ciag_znakow, "%*[^0-9] %i", &value);
* - pomin, nie musimy dostarczac zmiennej dla tego co odczytamy
[^0-9] - wszystko poza cyframi
- 1
#programowanie #jezykc
Mircy mam takie zadania:
1) Napisz funkcję, która dla zmiennej typu unsigned char jeśli jej najmłodszy bit ma wartość 1 wyzeruje 2 najstarsze bity tej zmiennej, a pozostałe bity ustawi na wartość 1
Słabo u mnie z tymi operacjami bitowymi, czekam na jakieś podpowiedzi mądrych mirków.
Mircy mam takie zadania:
1) Napisz funkcję, która dla zmiennej typu unsigned char jeśli jej najmłodszy bit ma wartość 1 wyzeruje 2 najstarsze bity tej zmiennej, a pozostałe bity ustawi na wartość 1
Słabo u mnie z tymi operacjami bitowymi, czekam na jakieś podpowiedzi mądrych mirków.
@Gottek: char ma 8 bitów wiec
1000 0000 bin = 80hex -> ileś tam dec
i jesli (~(liczba & 0x80) )HEX to najstarszy to 1
1111 1100 bin = FC hex
1000 0000 bin = 80hex -> ileś tam dec
i jesli (~(liczba & 0x80) )HEX to najstarszy to 1
1111 1100 bin = FC hex
- 1
Pytanie z języka C:
Mam wyrażenie: int const *ptr;
jeśli dobrze rozumiem deklarowany jest tu stały wskaźnik do inta
Wyrażenie: const int *ptr;
Mam wyrażenie: int const *ptr;
jeśli dobrze rozumiem deklarowany jest tu stały wskaźnik do inta
Wyrażenie: const int *ptr;
Pierwsze to wskaźnik na stały int, drugie to to samo. W obu przypadkach możesz zmieniać adres, ale nie możesz zmieniać wartości zmiennej po przypisaniu.
Generalnie const odnosi się do tego co jest po jego lewej stronie (lub do tego co po prawej, jeżeli jest pierwszy w deklaracji zmiennej/wskaźnika/referencji).
Generalnie const odnosi się do tego co jest po jego lewej stronie (lub do tego co po prawej, jeżeli jest pierwszy w deklaracji zmiennej/wskaźnika/referencji).
- 1
@Malchos:
ja tylko dodam, że chcac osiagnac "W pierwszym przypadku mogę zmienić wartość na którą wskazuje ptr, ale nie jej adres" robisz:
int * const ptr = &costam
ja tylko dodam, że chcac osiagnac "W pierwszym przypadku mogę zmienić wartość na którą wskazuje ptr, ale nie jej adres" robisz:
int * const ptr = &costam
- 2
Pisze sobie producentów/konsumentów w C. Niestety z nieznanych mi powodów konsumenci ani razy nie dostają się do tablicy. Ma ktoś jakiś pomysł?
Producent: http://pastie.org/10176683
Konsument: http://pastie.org/10176679
common.h:pastie.org/10176684
#programowanie #jezykc
Producent: http://pastie.org/10176683
Konsument: http://pastie.org/10176679
common.h:pastie.org/10176684
#programowanie #jezykc
- 1
@1608: Ilu uruchamiasz konsumentów, a ilu producentów?
W jaki sposób to kompilujesz? Możliwe, że kompilator zmienia kolejność wywołań i masz zakleszczenie.
W jaki sposób to kompilujesz? Możliwe, że kompilator zmienia kolejność wywołań i masz zakleszczenie.
- 0
@legolass: Dzięki za odpowiedź, ale już sobie poradziłem :) Wszystko działało tylko proces nie wypisywał nic na wyjście, wystarczyło dopisać "\n" do printa w konsumencie.
Mireczki, nie ogarniam przydzielania portów przy programowaniu na gniazdkach BSD.
Załóżmy, że chcę zrobić sobie malutki programik typu peer to peer, powiedzmy chat. Jeden z peerów występuje oczywiście w roli serwera, a drugi w roli klienta. Serwer musi nasłuchiwać na jakimś porcie, tylko że jak go ustalę arbitralnie (hard code) to istnieje ryzyko, że ten akurat będzie zajęty i bind() się wywali. A jak przydzielę pierwszy lepszy wolny port, to klient nie
Załóżmy, że chcę zrobić sobie malutki programik typu peer to peer, powiedzmy chat. Jeden z peerów występuje oczywiście w roli serwera, a drugi w roli klienta. Serwer musi nasłuchiwać na jakimś porcie, tylko że jak go ustalę arbitralnie (hard code) to istnieje ryzyko, że ten akurat będzie zajęty i bind() się wywali. A jak przydzielę pierwszy lepszy wolny port, to klient nie
@CamelCase: w LAN zrobilbym tak jak sugeruje @KptFeelxEksploratorStrefyPrzyjazni. Wybral kilka portow i liczyl na to, ze nie bedzie konfliktu ew. zainteresowal sie czyms takim jak UPnP/SSDP
@KptFeelxEksploratorStrefyPrzyjazni, @CamelCase: tak jak pisalem, moze to byc UPnP/SSDP. Generalnie to wszystko to sa zdefiniowane protokoly warstw wyzszych niz TCP&UDP. Nie znam nic takiego co dzialaloby 'automagicznie' do warstwy 4 modelu OSI
- 2
Próbuję rozwiązać
www.physics.usyd.edu.au/~wheat/dpendhtml/ korzystając z metod GSL
Mój kod:
http://pastie.org/10141082
Przy wykonaniu programu dla dowolonych wartości otrzymuje
www.physics.usyd.edu.au/~wheat/dpendhtml/ korzystając z metod GSL
Mój kod:
http://pastie.org/10141082
Przy wykonaniu programu dla dowolonych wartości otrzymuje
- 0
@1608: http://stackoverflow.com/questions/30035499/double-pendulum-solution-using-gsl (jakby ktoś chciał odpowiedzieć na stacku)
Mirki z #programowanie
Chcę rozdzielić liczbę na cyferki w #jezykc
Mam przykładowo liczbę 1234 i chcę wyciągnąć z niej tylko jedną konkretną cyfrę, np 3.
Jak zrobić to najbardziej optymalnie?
#avr #komputery #pytanie
Chcę rozdzielić liczbę na cyferki w #jezykc
Mam przykładowo liczbę 1234 i chcę wyciągnąć z niej tylko jedną konkretną cyfrę, np 3.
Jak zrobić to najbardziej optymalnie?
#avr #komputery #pytanie
- 1
@PanDziobaku: no przeciez opisał, chce pojedynczy znak ze stringa
- 1
@SiarkoWodor: z tego co rozumiem chciałbyś z liczby typu całkowitego (int) wyciągnąć konkretną pojedynczą cyfrę.
Załóżmy, że int liczba; jest dowolną liczbą całkowitą; Np. liczba = 123456789;
aby wyciągnąć ostatnią: liczba %= 10;
przedostatnią: liczba %= 100; liczba /= 10;
3 od końca: liczba %= 1000; liczba
Załóżmy, że int liczba; jest dowolną liczbą całkowitą; Np. liczba = 123456789;
aby wyciągnąć ostatnią: liczba %= 10;
przedostatnią: liczba %= 100; liczba /= 10;
3 od końca: liczba %= 1000; liczba
- 2
Ma ktoś jakiś pomysł ?
http://stackoverflow.com/questions/29991930/msgsnd-not-sending-where-it-should
#programowanie #jezykc
http://stackoverflow.com/questions/29991930/msgsnd-not-sending-where-it-should
#programowanie #jezykc
Robię projekt na programowanie, grę w statki. Mam już ustawianie łodzi, lecz na siebie nachodzą, a mają mieć co najmniej jedną "kratkę" wolną. Jak to zrobić? Bo nie mam pomysłu :/
#programowanie #jezykc
#programowanie #jezykc
źródło: comment_8Xo6pEiC3oOqrcs3vwsTpaKG3itrWdmu.jpg
Pobierz@jaskowice1: Lecisz sobie po pamięci, wyższe, niższe, jedno na prawo, jedno na lewo. W zależności od typu statku modyfikujesz swoje sprawdzanie. Np robisz sobie funkcje która zwróci false(ify na sztywno, albo kombinuj), gdy gdziekolwiek wykryje jedynkę. Jak funkcja zwróci false, to pole nie nadaje się na statek i tyle.
Zrób to tak, jak uważasz za najnaturalniejsze do ciebie. Później możesz jeszcze eksperymentować z wydajnością, ale przy statkach kilka ifów nie
Zrób to tak, jak uważasz za najnaturalniejsze do ciebie. Później możesz jeszcze eksperymentować z wydajnością, ale przy statkach kilka ifów nie
- 1
@jaskowice1: Wklej kawałek kodu w którym masz problem, ktoś pewnie pomoże. Trochę za ogólne to pytanie.
Ogólnie odpowiadając, w zależności od języka programowania albo:
1. traktujesz 0-1 jako wartości logiczne, i po prostu robisz AND(koniunkcja) każdej pary tablicy zawierającej statek oraz pola obok niego (z wykluczeniem oczywiście sumowania dwu pol tego samego statku), alternatywa takich koniunkcji zwróci ci wartość true (czyli jest zderzenie), bądź false (czyli jego brak) - tak bym to widział.
Ogólnie odpowiadając, w zależności od języka programowania albo:
1. traktujesz 0-1 jako wartości logiczne, i po prostu robisz AND(koniunkcja) każdej pary tablicy zawierającej statek oraz pola obok niego (z wykluczeniem oczywiście sumowania dwu pol tego samego statku), alternatywa takich koniunkcji zwróci ci wartość true (czyli jest zderzenie), bądź false (czyli jego brak) - tak bym to widział.
Mam takie coś w dwóch funkcjach i obie funkcje zwracają takie same liczby :/ A przecież powinno inne losowe... Co zrobić, żeby losowało inne liczby?
srand(time(NULL));
int start_i=rand()%7;
srand(time(NULL));
int start_j=rand()%11;- 0
@kuhar: Ok już sobie poradziłem, wyrzuciłem srand'a z funkcji i dałem go tylko raz w main()
- 0
@jaskowice1:
time(NULL) zwraca liczbę sekund od 1.01.1970, więc najprawdopodobniej wykonuje się to tak szybko, że zwraca tę samą liczbę. srand() resetuje generator liczb pseudolosowych, więc rand() znowu zwraca to samo.Mirki mam pytanko. Jak w języku C odwołać się np do 1 litery danego słowa
Przykładowo chcę napisać program, który "czyta" jaka jest 3 litera danego słowa np. janusz i gdy 3litera=n wtedy wpisuje na ekran przykładowo 10.
Drugie pytanie to jak podzielić np liczbę 12 cyfrową np. 555555555555 na 3 ciągi cyfr co 4 znak czyli 5555 5555 5555
#jezykc #naukaprogramowania
Przykładowo chcę napisać program, który "czyta" jaka jest 3 litera danego słowa np. janusz i gdy 3litera=n wtedy wpisuje na ekran przykładowo 10.
Drugie pytanie to jak podzielić np liczbę 12 cyfrową np. 555555555555 na 3 ciągi cyfr co 4 znak czyli 5555 5555 5555
#jezykc #naukaprogramowania
@PrawieJakBordo: K&R Ansi C.
@michak: o jedna gwiazdke za duzo
- 1
Mam pewien problem. Próbuje porównać sobie działanie funckji do generowania liczb pseudolosowych, korzystając z pakietu GSL. Porównuje dwa algorytmy zwykły rand() i Mersenne Twister. Histogram jaki otrzymuje niestety nie pokazuje znaczących różnic pomiędzy algorytmami, a Mersenne Twister powinien byc wiele lepszy niż rand(). Co zrobić żeby zaprezentowac ta różnice pomiędzy tymi dwoma funkcjami?
Kod który używam do generowania liczb:
double
Kod który używam do generowania liczb:
double
** *RandomNumberGenerator::MersenneTwister(**int
źródło: comment_HM1NtuNw1lUB2wp1A7bm4OWNUfJ6OBi7.jpg
Pobierz@1608: ale rand powinien być regularny (by nie było lepszych watości)
ja bym czegoś w stylu lini trędu szukał , okresowości i takich tam
ja bym czegoś w stylu lini trędu szukał , okresowości i takich tam
- 3
niestety nie pokazuje znaczących różnic pomiędzy algorytmami, a Mersenne Twister powinien byc wiele lepszy niż rand()
@1608: Lepszy to wcale nie znaczy, że rozkład będzie "bardziej" jednostajny. MT jest lepszy, bo ma np. bardzo długi okres itp. Istnieje zbiór testów do badania jakości generatorów liczb pseudolosowych (http://en.wikipedia.org/wiki/Diehard_tests ), może spróbuj je jakoś wykorzystać, żeby pokazać wyższość MT nad rand - sam histogram różnic znaczących nie pokaże.
konto usunięte via Android
- 5
konto usunięte via Android
- 1
Ach, WTF operator.
Komentarz usunięty przez autora
@wytrzzeszcz: Proponuję przepisać kernel Linuksa do Javy albo Basha ;)
Mirki, nie ogarniam gniazd BSD.
Załóżmy, że serwer (który ma obsługiwać potencjalnie dowolnie wielu klientów jednocześnie) wisi na funkcji accept. Przychodzi połączenie, accept zwraca deskryptor klienta i co dalej? Podejrzewam, że umieszczam deskryptor w jakimś kontenerze, wątek wraca na accept, a drugi wątek stara się wykonywać funkcje odczytu i zapisu na deskryptorach klientów, tylko jak to powinno wyglądać? Na przykład read i write są blokujące. Co jeżeli zawiesi mi się write, inni
Załóżmy, że serwer (który ma obsługiwać potencjalnie dowolnie wielu klientów jednocześnie) wisi na funkcji accept. Przychodzi połączenie, accept zwraca deskryptor klienta i co dalej? Podejrzewam, że umieszczam deskryptor w jakimś kontenerze, wątek wraca na accept, a drugi wątek stara się wykonywać funkcje odczytu i zapisu na deskryptorach klientów, tylko jak to powinno wyglądać? Na przykład read i write są blokujące. Co jeżeli zawiesi mi się write, inni
- 3
@CamelCase: man select, man poll, man epoll
miałem to na kursie z typkiem w ostatnim semestrze. Może Ci się przyda i znajdziesz przykład, który potrzebujesz. Jest tam coś o gniazdach, ale widzę że nie całość skryptu co nam dawał na papierze ;/
http://jedrzej.ulasiewicz.staff.iiar.pwr.wroc.pl/KomputeroweSystSter/lab/LabNeutrinoRTS-30.htm
http://jedrzej.ulasiewicz.staff.iiar.pwr.wroc.pl/KomputeroweSystSter/lab/LabNeutrinoRTS-30.htm


















std::vector mySplit(const std::string& str);Czy bezpiecznie jest zadeklarować ją z atrybutem pure?
__attribute__((pure))@CamelCase: Jedne z warunków, aby funkcja była pure:
* wartość zwracana musi być zależna od parametrów (pamięć globalna na którą wskazuje jeden z parametrów nie jest uznawana za parametr),
* nie może pisać po pamięci globalnej (może natomiast czytać z niej),
* funkcja nie może
@8tab: nieprawda, ten warunek jest inny: wartość zwracana nie może być zależna od niczego innego oprócz parametrów (argumentów) lub/i zmiennych globalnych.