Przewodnik kompilacji w C++
Transkrypt
Przewodnik kompilacji w C++
Przewodnik kompilacji w C++ 1. W czym pisać program ? W trakcie zawodów będziemy potrzebować tylko dowolnego edytora tekstu, np.: Notepad++ , Notatnik , WordPad. Każde stanowisko będzie wyposażone w w/w edytory, w których będziemy mogli pisać nasz program. Przykład: Zapisujemy nasz kod źródłowy jako nazwa.c i przechodzimy do etapu kompilacji :) 2. Jak kompilować ? . Do procesu kompilacji będziemy używać kompilatora G++ , co za tym idzie kompilacja odbywa się pod konsolą Windows. Skompilować program możemy wtedy i tylko wtedy gdy jesteśmy w katalogu w którym znajduje się nasz plik źródłowy: Konsolę uruchamiamy w sposób następujący: Start → Uruchom → wpisujemy „command” lub „cmd” → Enter / OK Mała powtórka z podstawowych poleceń DOS-a. Nazwa_dysku : → przejście między partycjami cd nazwa_folderu → wejście do danego folderu cd..→ wyjście z folderu poziom wyżej. Będąc już w naszym folderze w którym mamy swój „kochany” program możemy skompilować go za pomocą polecenia: g++ nazwa_pliku.cpp Utworzy się plik wykonywalny o nazwie a.exe który możemy już odpalić ;) Jeśli chcemy nazwać swój plik wykonywalny inaczej piszemy w konsoli: g++ -o nazwa_pliku_wykonywalnego nazwa_pliku_źródłowego.cpp 3. Jak uruchomić nasz program ? Istnieją dwa sposoby uruchomienia naszego programu , mianowicie : 1. Klikając na plik *. exe 2 razy :) 2. Uruchamiając pod konsolą poleceniem ./ nazwa_pliku.exe Jeśli chcemy uruchomić nasz program z przygotowanym plikiem wejściowym odpalamy nasz program za pomocą polecenia : ./ nazwa_pliku.exe <dane_wejsciowe.txt Przykładem może być program sumujący dwie liczby: #include <stdio.h> int main() { int a,b; int suma; scanf("%d",&a); scanf("%d",&b); suma= a+b; printf("Suma wynosi : %d \n", suma); return 0; } Zapisujemy program jako suma.c kompilujemy oraz przygotowujemy plik dane.txt w którym będą umieszczone nasze dwie liczby które chcemy dodać np.: 2 i 5. Po uruchomieniu programu poleceniem ./ suma.c <dane.txt Powinniśmy otrzymać wynik : Suma wynosi : 7 :) Kolejna ważną opcją kompilacji jest ilość wyświetlanych ostrzeżeń. Za pomocą polecenia -Wall możemy sprawić, że kompilator będzie wypisywał nam wszelkie znalezione nieprawidłowości podczas kompilacji , nawet jeśli nie są to błędy, a tylko ostrzeżenia. g++ -o suma -Wall suma.c Jednak gdy chcemy wystrzec się wszystkich błędów możemy użyć opcji -Werror. Kompilator po napotkaniu jakiegokolwiek błędu lub ostrzeżenia.Plik Exe zostanie zbudowany tylko wtedy gdy wszystkie nieprawidłowości zostaną poprawione. G++ -o suma -Wall -Werror suma.c Mam nadzieję iż ten krótki kurs kompilacji w G++ pomoże Państwu w czasie zawodów i przyspieszy pracę :) Pewnie Państwo zastanawiają się czym jest spowodowany taki, a nie inny sposób kompilacji, a nie np.: używanie Dav C++ gdzie kompilacja jest automatyczna po kliknięciu jednego buttona. Otóż gotowe narzędzia programistyczne m.in. Dev C++ nie trzyma ustalonego standardu języka i może przepuścić rzeczy „ poza standardem”. Takim błędem jest np. tworzenie dynamiczne tablicy tzn: W Dev C++ nie zostanie zgłoszony błąd przy następującym zdeklarowaniu tablicy: int main() { int a; int tab[a]; return 0; } A jest to oczywiście ewidentnym błędem gdyż rozmiar tablicy nie jest podany, bo pod zmienna a w takim stanie kryją się po prostu śmieci. Po wysłaniu takiego kodu do sprawdzenia otrzymalibyście komunikat zwrotny Compliation Error, dlatego też aby uchronić was przed takiego rodzaju błędem spowodowanym przez nieścisłości narzędzi programistycznych doszliśmy więc do wniosku że kompilacja w „czystym C ++ ” będzie dla wszystkich najlepszym rozwiązaniem. Do zobaczenia 20 . Kwietnia :) Autor: Krzysztof Rudlicki