TwojePC.pl © 2001 - 2024
|
|
A R C H I W A L N A W I A D O M O Ś Ć |
|
|
|
Prosba o pomoc z programikiem w C , Barts_706 12/01/06 09:29 Potrzebuje na szybko programik w C wyszukujacy w lancuchu znakow kolejne podciagi (rozgraniczone jakims konkretnym znakiem), i porownujacy kolejne podciagi z jakims testowym lancuchem.
W C troche programowalem, ale glownie kontrolery i w zwiazku z tym nie bardzo znam sie na lancuchach i brakuje mi roznych C++ funkcji do obrobki stringow. Stad prosba o pomoc, bo potrzebuje do jutra to miec napisane.
A dokladny opis problemu ponizej :
Mamy bufor znakow szBuff[], powiedzmy ze o takiej zawartosci :
szBuff[] = {'a','b','c','X','d','e','f','g','X','h','i','X'};
gdzie np. 'a','b','c' jest jednym podciagiem (zdaniem, lancuchem, buforem, whatever), a 'X' znakiem konca linii.
Chodzi o to, zeby po kolei wyciagac takie lanuchy, i porownywac z buforem testowym. Np :
testBuff[] = {'d','e','f','g','X'} //albo bez 'X' na koncu, tego jeszcze nie jestem pewien, ale to w sumie niewazne
Wiec z szBuff[] wyciagamy po kolei 'a','b','c' i porownujemy, nie jest to co ma byc, to nastepny 'd','e','f','g', porownujemy, to jest to , sukces.
Ktos wie jak to ugryzc? Te funkcje ze string.h sa strasznie upierdliwe w uzyciu. Myslalem uzyc strstr do porownania i strpbrk do ustawiania jakiegos countera na aktualna pozycje znaku 'X', ale to jakos malo eleganckie mi sie wydaje, a poza tym one zwracaja tylko wskaznik do elementu, i nie bardzo wiem jak go uzyc.
A jesliyb ktos mial podobny kawalek kodu, to bede bardzo wdzieczny gdyby go tu wkleil._______________________________
http://jawnesny.pl - poczytaj o , wukillah 12/01/06 09:35
algorytmie Knutha-Morrisa-Prattajust d'oh it! - syntax error in line 2 , beef 12/01/06 10:17
kolega nie chce wyszukiwać podciągów, a dzielić w oparciu o separatory. No chyba, że chcesz KMP wyszukiwać pojedyncze znaki :)this is the time of the revolution
keepin' it in the right track
feelin' it in my mind back - hmmm , wukillah 12/01/06 10:22
"Potrzebuje na szybko programik w C wyszukujacy w lancuchu znakow kolejne podciagi (...)" - jak dla mnie to jest to problem
wyszukiwania wzorca. Moze nie zrozumialem pytania.just d'oh it! - nie ma to... , beef 12/01/06 10:28
...jak dopasować cytat do tezy :) A w tym nawiasiku, co to tak wyciąłeś lekką ręką, to co było, he? "Rozgraniczone jakims konkretnym znakiem". A to stawia całe pytanie w ZUPEŁNIE innym świetle. Nie ściemniaj, żeś nie zrozumiał, po prostu nie chciało Ci się przeczytać :) Inna sprawa, że kolega zaczął pytaniem o "wyszukiwanie podciągów", a powinno być o "podział ciągu", ale jeśli by się na tym znał, to by nie pytał, prawda?this is the time of the revolution
keepin' it in the right track
feelin' it in my mind back
- użyj funkcji , beef 12/01/06 10:16
strtok. Robi dokładnie to, czego potrzebujesz. Na pewno jest mniej upierdliwa, niż pisanie tego ręcznie :)this is the time of the revolution
keepin' it in the right track
feelin' it in my mind back - Oka, chlopaki, dzieki, ale... , Barts_706 12/01/06 12:45
...czy nie macie jakis podobnych programikow do podrzucenia? Latwiej by mi bylo.
Siedze w tym wlasnie i na razie udalo mi sie zrobic kawalek porownujacy jakis (juz wyciety) ciag z wzorcem. Ponadto zastanawiam sie, czy nie przekonwertowac tego na normalne stringi i potem nie uzywac tamtych funkcji, czy to aby prosciej nie bedzie?
A, no i sorki za niescisle sformulowania, ale informatyke na studiach mialem dosyc slaba, a potem sie douczalem sam ze zrodel bardzo roznych, wiec jesli idzie o nomenklature, to roznie bywa. Staralem sie mozliwie jasno wytlumaczyc, widac ze np. kolega beef zaskoczyl o co chodzi, czyli nie jest az tak bardzo fatalnie.
Za wszelkie odpowiedzi dzieki, kazde nastepne beda rownie mile widziane._______________________________
http://jawnesny.pl - masakra ten C... , josh 13/01/06 01:26
...niesamowity jezyk. Uczylem sie go, ale od poczatku traktowalem bardziej jako ciekawostke. Trzeba byc wg mnie strasznym twardzielem, zeby pisac w tym cokolwiek skomplikowanego.
Zeby jednak tworzyc w nim aplikacje uzytkowe z wyboru to juz raczej totalny hardcore :) Przeciez jeszcze tylko jeden maly kroczek w tyl i mamy assemblera. Nie powiem - poznawanie C to bylo ekscytujace zajecie, ale to co w C piszesz w tydzien mozesz np. w takiej Javie zrobic w jeden dzien znajac obydwa jezyki na tym samym poziomie.
Nie, zebym mial cos przeciwko C. Rozumiem, ze moze byc sytuacja, ze programujemy jakies urzadzenie a nie komputer i jesli mamy do wyboru tylko C to co robic...- Zgadzam sie , Barts_706 13/01/06 02:27
To jest jezyk w pol drogi miedzy asemblerem a jezykami wyzszego poziomu w rodzaju Javy i C++ (IMHO rzecz jasna, inni moga sie nie zgodzic).
Potega Javy tkwi w latwosci pisania, przenosnosci (portability, jak to sie kufa mowi po polsku?) i setkach gotowych do uzytku klas. Potega C++ tkwi w szybkosci, elastycznosci i niesamowitych funkcjach rozszerzajacych podstawowa specyfikacje jezyka (przede wszystkim STL, to tak niewiarygodnie upraszcza wszystko).
Miedzy innymi dlatego pytalem tu o pomoc, bo brakuje mi troche roznych ulatwien i ciezko i opornie mi to idzie.
Ale C ma swoje plusy rowniez, no i do programowania troszke nizszego poziomu (mikrokontrolery, czujniki rozne etc) jest jak na razie podstawa._______________________________
http://jawnesny.pl
|
|
|
|
|
All rights reserved ® Copyright and Design 2001-2024, TwojePC.PL |
|
|
|
|