Dyskusja:C/Pierwszy program: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
 
Linia 35:
3. Język C nie ma oddzielnego typu "logicznego". Wartość logiczną PRAWDA reprezentuje dowolna wartość różna od zera, podczas, gdy FAŁSZ reprezentuje wartość numeryczna "zero".<BR>
4. Język poleceń każdego systemu operacyjnego ma polecenie/instrukcję warunkową pozwalającą badać wartość zwracaną przez uruchomiony program (w przypadku programu C jest to wartość zwracana przez instrukcją return funkcji main lub argument funkcji exit(), która wywolana gdziekolwiek w programie kończy go i podstawia pod symbol main wartość argumentu wywołania. Instrukcja, o której mowa w przypadku systemów operacyjnych Microsoftu ma postać: '''if errorlevel 1 goto etykieta'''. To właśnie postać tej instrukcji odpowiada na pytanie, dlaczego poprawne zakończenie programu powinno dostarczać do systemu wartość zero reprezentującą FAŁSZ. Zwrot '''errorlevel 0''' da się zinterpretować tak , że twierdzenie iż wystąpił błąd w programie (errorlevel) jest fałszywe zgodnie z tym co powiedziano wyżej o wartościach "logicznych" w C. Jest to oczywiście umowne i dlatego u Kernighana jest passus "zwykle...". Twardy fakt, to to, że instrukcja warunkowa języka poleceń systemu operacyjnego if errorlevel pozwala zbadać JAKĄ ( niekoniecznie zerową) wartość zwrócił ostatnio wykonany program i na tej podstawie zróżnicować dalszy przebieg algorytmu przetwarzania realizowanego przez pisany przez nas skrypt systemowy (na gruncie terminologii Microsoftu skrypty systemowe to ... pliki wsadowe ;) ).<BR>
5. Zwracam uwagę na fakt, że dużo bardzie rygorystycznie programista musi traktować dane przesyłane do main() przez system operacyjny, które są dostępne za pośrednictwem argumentów funkcji main(). MusiJeśli byćchce ichskorzystać z przekazywanej informacji musi posłużyć się parametrami formalnymi funkcji main().Parametrów tych musi być ściśle określona ilość i muszą być ściśle określonego typu. Ale to już innyinna historia ( zainteresowani zaglądną do odpowiedniego rozdziału podręcznika problemC). Nota bene, puste nawiasy okrągłe w definicji main() ( lub słowo void)oznaczają, że programista będzie ignorował dane dostarczane do programu przez system operacyjny.<BR>
 
 
Powrót do strony „C/Pierwszy program”.