C/O języku C: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
Kj (dyskusja | edycje)
mNie podano opisu zmian
Kj (dyskusja | edycje)
Linia 23:
 
=== Standaryzacje ===
W 1978 roku Ritchie i Kerninghan opublikowali pierwszą książkę nt. języka C - "The C Programming Language". Owa książka przez wiele lat była swoistym "wyznacznikiem", jak programować w języku C. Była więc to niejako pierwsza standaryzacja, nazywana od nazwisk twórców "K&R". Oto nowości, wprowadzone przez nią do języka C w stosunku do jego pierwszych wersji (pochodzących z początku lat 70.):
Pierwsza odsłona języka C, opisana w książce pt. "The C Programming Language" nazywana jest od nazwisk jej autorów: "K&R". Program napisany według niej może się wydawać nieco dziwny, nawet dla kogoś, kto zna język C. Oto przykład programu:
* możliwosć tworzenia struktur (słowo '''struct''')
* dłuższe typy danych (modyfikator '''long''')
* liczby całkowite bez znaku (modyfikator '''unsigned''')
 
int main (argc, argv)
int argc;
char **argv;
{
printf ("Hello world");
}
 
Zademonstrowana powyżej składnia różni się nieco, od dzisiejszych standaryzacji języka C. Np. w deklaracji funkcji nie podawało się typów danych argumentów, lecz tylko ich nazwy. Informację, jakiego typu są argumenty podawało się poza nawiasami.
{{TODO|opisać pozostałe standaryzacje}}
 
== Zastosowania języka C ==
Język C został opracowany jako strukturalny język programowania do celów ogólnych. Przez całą swą historię (czyli ponad 30 lat) służył do tworzenia przeróżnych programów - od systemów operacyjnych po programy nadzorujące pracę urządzeń przemysłowych. C, jako język dużo szybszy od języków interpretowanych (Perl, Python) oraz uruchamianych w maszynach wirtualnych (np. C#, Java) może bez problemu spełniać zadania nawet, gdy nałożone są dość duże limity czasu wykonywania pewnych operacji. Jest on przy tym bardzo przenośny - może działać praktycznie na każdej architekturze sprzętowej pod warunkiem opracowania odpowieniego kompilatora. Jednak w niektórych sytuacjach język C okazuje się być mało przydatny. Zwłaszcza chodzi tu o obliczenia matematyczne, wymagające dużej precyzji (w tej dziedzinie znakomicie spisuje się [[Fortran]] lub też dużej optymalizacji dla danego sprzętu (wtedy niezastąpiony jest język asemblera).