Skocz do zawartości

Zarchiwizowany

Ten temat jest archiwizowany i nie można dodawać nowych odpowiedzi.

Pietreck

Projekt z programowania

Polecane posty

Witam :happy:

Mam do wykonania projekt z programowania, jednak za bardzo nie wiem o co w nim chodzi:( Obiektywnie projekt zapewne nie jest tak trudny, jednak ja dopiero zaczynam swoją przygodę z programowaniem i w wielu kwestiach jestem jeszcze przysłowiowo zielony:( Mam nadzieję, że ktoś z Was będzie w stanie mi pomóc:) Oto mój projekt:

Stworzyć program przetwarzający dane zawarte w plikach tekstowych, który w zależności od podanych parametrów linii poleceń wyświetli odpowiednie statystyki.

Mój typ plików tekstowych to: ls - lista plików programu ls (linux)

Program ma działać w środowisku linux zainstalowanym w laboratoriach.

(Zainstalowałem VirtualBox i tam odpalam Ubuntu, może nieco paradoksalnie, ale uruchamiam jako LiveCD. Nie wiedzieć czemu Ubuntu nie chce się zainstalować na "dysku" stworzonym przez VirtualBox, tzn. każdorazowo gdy włączam maszynę to muszę na nowo zainstalować linuxa, pomimo że w boot sequence odznaczyłem CDROM i jako 1 pozycja na liście figuruje Dysk twardy. Właśnie, może znacie na to radę?)

Program powinien być kompilowany standardowym poleceniem make (czyli należy stworzyć odpowiedni plik Makefile).

(Co do makefile'ów znalazłem linka naprogramuj, tam jest trochę informacji, tylko nie wiem czy o to chodzi i czy będą te informacje przydatne?)

Plik Makefile powinien mieć zdefiniowane polecenia all, clean i ewentualnie debug. Komunikaty mogą być po polsku lub po angielsku (tylko konsekwentnie - wszystkie).

I tak dalej leci polecenie odnośnie projektu... Na razie może skupię się na tym początku, który powyżej przytoczyłem :wink:

Byłbym wdzięczny, gdyby znalazł się ktoś kto po krótce objaśniłby od czego zacząć, co przeczytać, może podał jakieś linki oraz posłużył ogólną radą i wskazówką :happy:

Pozdrawiam

Link do komentarza
Udostępnij na innych stronach

Dobra, to zacznijmy od początku. Zbyt dużo nie potrzebujesz, więc proponuję w ogóle zrezygnować z Ubuntu i ściągnąć, i zainstalować u siebie Cygwina, lub MSYSa. Są to środowiska naśladujące GNU/Linuksa działające na Windowsie, które do Twoich celów wystarczą. Na Ubuntu można później przetestować ostateczną wersję (tak dla pewności).

Najpierw napisz program, skryptem make można się zająć na końcu. W tym linku, który podałeś jest wszystko, czego potrzebujesz do stworzenia pliku Makefile.

To co powyżej napisałem powinno Ci wystarczyć na początek. Zacznij pisać kod i w razie problemów pytaj. Całkiem niezły tutorial do C++ znajdziesz tu.

Link do komentarza
Udostępnij na innych stronach

Zacznij od instalacji mingw. Oczywiście program skompilowany przez mingw gcc nie będzie działał pod linuxem, ale takie rozwiazanie pozwoli Ci w miare wygodnie pracowac na windowsie bez zabawy w żadne virtual boxy. Nie korzystać z żadnych niestandardowych bibliotek, to nie będziesz miał problemów z kompilacją pod linuxem.

Dalej dobrze jest zapoznać się z make. Tutaj masz instrukcję: http://neo.dmcs.p.lodz.pl/tk/make.html MinGW ma takie cudo jak mingw32-make zamiast make.

Na koniec ściągamy nasz ulubiony edytor notepad++ i wio.

Program jest raczej prosty.

1 otworzyć plik <fstream>

2 przeanalizować zawartość

3 zamknąć plik

4 wyświetlić/zapisać raport <iostream/fstream>

Link do komentarza
Udostępnij na innych stronach

Mam pytanie odnośnie projektu:):

"Program ma być sterowany wyłącznie parametrami podawanymi w wierszu poleceń"

I mam przykładowo podane:

./program --? Wyświetl pomoc

./program -- help Wyświel pomoc (czyli to samo)

./program [-v] [opcje] - tutaj odpowiednie opcje programu

Czy oznacza to, że w terminalu powinienem uruchamiać program z "dodatkiem" np. --? (czyli ./program --?) czy uruchamiać program i podczas pracy programu wpisać --? aby uzyskać pomoc?

Jeśli trzeba dodawać odpowiednie polecenia z poziomu terminalu, wówczas zastanawiam się jak to należy zrobić:(

Link do komentarza
Udostępnij na innych stronach

"Parametry podawane w wierszu polecenia" to właśnie wpisywane w terminalu po nazwie programu (jak to określiłeś "z dodatkiem"). Można to zrobić na dwa sposoby:

1.

int main (int argc, char *argv)

Tak powinna wyglądać twoja deklaracja funkcji main(). argc to liczba argumentów, argv to tablica argumentów. Wystarczy je sczytać i porównać np. strcmp(argv[1], "--?"); Pamiętaj, że argv[0] to nazwa programu.

2.

Jest też zestaw funkcji do obsługi parametrów w linii poleceń, ale w tej chwili ich nazw sobie nie przypomnę. Niemniej zastosowanie ich może pokazać, że "wniknąłeś" nieco w język ;)

Link do komentarza
Udostępnij na innych stronach



  • Kto przegląda   0 użytkowników

    • Brak zalogowanych użytkowników przeglądających tę stronę.
×
×
  • Utwórz nowe...