- Wydawnictwo:
- Helion
- Wydawnictwo:
- Helion
- Ocena:
- 5.8/6 Opinie: 63
- Stron:
- 1024
- Druk:
- oprawa miękka
- 3w1 w pakiecie:
-
PDFePubMobi
Opis książki Język C. Szkoła programowania. Wydanie VI
Język C niewątpliwie należy do kanonu języków programowania. Cechuje się elegancją i prostotą, jest wszechstronny i elastyczny, jednak uważa się go za trudny i wymagający. Na pewno warto opanować C — jeśli nauczysz się tworzyć solidny kod w tym języku, poradzisz sobie z każdym innym językiem programowania.
Trzymasz w dłoni kolejne wydanie niezwykle popularnego podręcznika do nauki C. Podobnie jak poprzednie wydania, także to zostało zaktualizowane i uzupełnione, między innymi o elementy standardu C11. Książka stanowi przemyślane, przejrzyste i wnikliwe wprowadzenie do języka C. Czytelnie wyjaśnia zasady programowania, zawiera opisy licznych rozwiązań programistycznych, setki przykładów kodu oraz ćwiczenia do samodzielnego wykonania. Dzięki takiemu układowi treści wiele osób nauczyło się C właśnie z tej książki, a kolejne jej wydania są przyjmowane z entuzjazmem.
W tej książce znajdziesz:
- kompletne omówienie podstaw języka C i najważniejszych paradygmatów programowania
- wyczerpujące informacje o nowych elementach C
- jasne wskazówki dotyczące wyboru poszczególnych metod programowania w różnych sytuacjach
- setki przykładowych fragmentów kodu
- pytania sprawdzające i ćwiczenia utrwalające w każdym rozdziale
- liczne informacje o możliwościach języka C
Naucz się C, a zrozumiesz istotę programowania!
O autorze książki
1 Stephen PrataStephen Prata wykłada astronomię, fizykę i informatykę w College of Marin w Kentfield w Kalifornii. Magisterium uzyskał na Politechnice Kalifornijskiej, a doktorat na Uniwersytecie Stanowym Kalifornii w Berkeley. Jest autorem i współautorem ponad tuzina książek wydanych przez The Waite Group, w tym książki "New C Primer Plus", która uzyskała w 1990 roku nagrodę za najlepszy podręcznik komputerowy przyznawaną przez Stowarzyszenie Prasy Informatycznej oraz niniejszej, nominowanej do tej samej nagrody w roku 1991.
Podobne produkty
-
Refaktoryzacja. Ulepszanie struktury istniejące... Refaktoryzacja. Ulepszanie struktury istniejącego kodu. Wydanie II
Martin Fowler
-
Algorytmy Data Science. Siedmiodniowy przewodni... Algorytmy Data Science. Siedmiodniowy przewodnik. Wydanie II
David Natingga
-
Czysty kod. Podręcznik dobrego programisty Czysty kod. Podręcznik dobrego programisty
Robert C. Martin
-
Docker. Praktyczne zastosowania. Wydanie II Docker. Praktyczne zastosowania. Wydanie II
Sean P. Kane, Karl Matthias
-
Mistrz czystego kodu. Kodeks postępowania profe... Mistrz czystego kodu. Kodeks postępowania profesjonalnych programistów
Robert C. Martin
-
Vue.js 2. Wprowadzenie dla profesjonalistów Vue.js 2. Wprowadzenie dla profesjonalistów
Adam Freeman
Podobne produkty
-
Czysty kod. Podręcznik dobrego programisty Czysty kod. Podręcznik dobrego programisty
Robert C. Martin
-
Algorytmy. Ilustrowany przewodnik Algorytmy. Ilustrowany przewodnik
Aditya Bhargava
-
Mistrz czystego kodu. Kodeks postępowania profe... Mistrz czystego kodu. Kodeks postępowania profesjonalnych programistów
Robert C. Martin
-
Czysta architektura. Struktura i design oprogra... Czysta architektura. Struktura i design oprogramowania. Przewodnik dla profesjonalistów
Robert C. Martin
-
Refaktoryzacja. Ulepszanie struktury istniejące... Refaktoryzacja. Ulepszanie struktury istniejącego kodu. Wydanie II
Martin Fowler
-
Wielkie umysły programowania. Jak myślą i pracu... Wielkie umysły programowania. Jak myślą i pracują twórcy najważniejszych języków
Federico Biancuzzi, Shane Warden
Ebooka przeczytasz na:
-
czytnikach Inkbook, Kindle, Pocketbook i innych
-
systemach Windows, MacOS i innych
-
systemach Windows, Android, iOS, HarmonyOS
-
na dowolnych urządzeniach i aplikacjach obsługujących formaty: PDF, EPub, Mobi
Masz pytania? Zajrzyj do zakładki Pomoc »
Audiobooka posłuchasz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolonych urządzeniach i aplikacjach obsługujących format MP3 (pliki spakowane w ZIP)
Masz pytania? Zajrzyj do zakładki Pomoc »
Kurs Video zobaczysz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolonych urządzeniach i aplikacjach obsługujących format MP4 (pliki spakowane w ZIP)
Recenzje książki: Język C. Szkoła programowania. Wydanie VI (1)
-
Programista Magazyn RAFAŁ KOCISZ; 2016-07-29
Jedną z pierwszych książek o programowaniu, które miałem okazję studiować, była klasyczna pozycja: Język ANSI C autorstwa Brian'a W. Kernighan'a oraz Dennis'a M. Ritchiego. Podejrzewam, że książka ta ukształtowała charakter niejednego programisty i przez wiele lat służyła wielu autorom podręczników programowania jako wzór do naśladowania. Dziś, 38 lat po opublikowaniu pierwszego wydania tej książki, C nadal pozostaje jednym z najpopularniejszych języków programowania (świadczy o tym chociażby zajmowane przez niego od ponad dziesięciu lat drugie miejsce w rankingu TIOBE). Język C - przez wielu postrzegany jako nowoczesna forma asemblera - czy wart jest tego, aby dziś, tu i teraz inwestować czas w jego naukę?
Szukając odpowiedzi na to pytanie, moje myśli skierowały się ku dwóm ponadczasowym esejom:\
Naucz się programować w 10 lat (ang. Teach Yourself Program-ming in Ten Years), autorstwa Peter'a Norvig'a (http://norvig. com/21-days.html)
Jak stać się hakerem (ang. How To BecomeA Hacker), autorstwa Eric'a Steven'a Raymond'a (http://www.catb.org/esr/faqs/ hacker-howto.html).
W eseju Raymond'a czytamy następujące słowa: Jeśli poważnie myślisz o programowaniu, będziesz musiał nauczyć się C:języka, na którym opiera się Unix. (...) Cjestjęzykiem bardzo efektywnym i oszczędnym w gospodarowaniu zasobami sprzętowymi. Niestety ceną za tę efektywność jest konieczność ręcznego zarządzania niskopoziomowymi zasobami (takimi jak pamięć). W związku z tym większość kodu pisanego w C jest złożona i łatwo podatna na błędy.
Z kolei Norvig w swoim eseju pisze:
Więc chcesz zostać programistą? (...) Naucz się co najmniej pół tuzina języków programowania!
Wniosek płynący z obydwu esejów (do których lektury serdecznie zapraszam) jest jasny: język C był, jest i pozostanie ważnym elementem współczesnej informatyki - na pewno warto się go uczyć, obok szeregu innych języków programowania. I tu dochodzimy do sedna niniejszego tekstu, którym jest próba znalezienia odpowiedzi na pytanie o to, jak na dzień dzisiejszy najlepiej rozpocząć naukę tego języka?
Moja odpowiedź na to pytanie brzmi: Język C. Szkoła programowania. Wydanie VI. Pierwszy rzut oka na tę książkę pozwala stwierdzić, iż jest to pozycja przeznaczona dla ambitnych czytelników: 1022 strony robi wrażenie. Na szczęście opracowanie autorstwa pana Praty napisane jest bardzo przystępnym (a jednocześnie konkretnym) językiem i studiuje się je z przyjemnością. Zawartość książki to 17 rozdziałów naładowanych wiedzą na temat C:
Zaczynamy (przegląd historii języka C, omówienie podstaw mechaniki programowania oraz organizacji książki),
Wstęp do C,
Dane w C,
Łańcuchy znakowe i formatowane wejście-wyjście,
Operatory, wyrażenia i instrukcje,
Instrukcje sterujące C. Pętle,
Instrukcje sterujące C. Rozgałęzienia i skoki,
Znakowe wejście-wyjście i przekierowywanie,
Funkcje,
Tablice i wskaźniki,
Łańcuchy znakowe i funkcje łańcuchowe,
Klasy zmiennej, łączność i zarządzanie pamięcią,
Obsługa plików,
Struktury i inne formy danych,
Manipulowanie bitami,
Preprocesor i biblioteka C,
Zaawansowana reprezentacja danych.
Język C to książka, którą w pierwszej kolejności poleciłbym studentom informatyki (szczególnie tym, którzy wybrali programowanie jako specjalizację) oraz osobom, które uczą się programować w związku z pracą zawodową. Opracowanie ma charakter podręcznika, przy czym autor zakłada, że czytelnik nie posiada zaawansowanej wiedzy związanej z programowaniem. Co istotne, Język C w najnowszym, szóstym wydaniu opisuje najnowszą wersję języka C - opartą na standardzie Cl 1 (ISO/IEC 9899:2011). Język C będzie też niewątpliwie przydatną lekturą dla programistów korzystających na co dzień z języków wyższego poziomu (np. Java, Python, C), a chcących rozszerzyć i ugruntować swoją wiedzę.
Podsumowując niniejszą recenzję, przytoczę zdanie jednego z moich znajomych: Jeśli nauczysz się jeździć Małym Fiatem, to pojedziesz każdym innym samochodem. Słowa te przyszły mi na myśl, kiedy przeczytałem hasło wypisane na okładce recenzowanej pozycji: Naucz się C, a zrozumiesz istotę programowania. Hasło to wydaje mi się troszeczkę przesadzone, aczkolwiek mogę z całą pewnością stwierdzić, iż znajomość języka C przybliża do poznania Istoty Programowania, zaś książka autorstwa Stephen'a Praty niewątpliwie pomoże czytelnikowi osiągnąć ten szczytny cel, dlatego też polecam ją z całego serca i życzę miłej lektury!
Szczegóły książki
- Tytuł oryginału:
- C Primer Plus (6th Edition) (Developer's Library)
- Tłumaczenie:
- Przemysław Szeremiota
- ISBN Książki drukowanej:
- 978-83-283-1470-2, 9788328314702
- Data wydania książki drukowanej:
- 2016-04-21
- ISBN Ebooka:
- 978-83-283-1473-3, 9788328314733
- Data wydania ebooka:
-
2016-04-21
Data wydania ebooka często jest dniem wprowadzenia tytułu do sprzedaży i może nie być równoznaczna z datą wydania książki papierowej. Dodatkowe informacje możesz znaleźć w darmowym fragmencie. Jeśli masz wątpliwości skontaktuj się z nami sklep@helion.pl.
- Format:
- 164x239
- Numer z katalogu:
- 44764
- druk na żądanie!
- dnż
- Rozmiar pliku Pdf:
- 8.1MB
- Rozmiar pliku ePub:
- 6.4MB
- Rozmiar pliku Mobi:
- 16.5MB
- Pobierz przykładowy rozdział PDF
- Przykłady na ftp
Ebook zawiera materiały dodatkowe, które możesz pobrać z serwera FTP - link znajdziesz na stronie redakcyjnej.
- Erraty / Zgłoś erratę
- Kategorie:
Programowanie » C - Programowanie
Spis treści książki
- Skąd C? (23)
- Dlaczego C? (24)
- Cechy użytkowe (25)
- Efektywność (25)
- Przenośność (25)
- Moc i elastyczność (26)
- Ukierunkowanie na programistę (26)
- Słabe strony (26)
- Dokąd zmierza C? (27)
- Co robią komputery? (28)
- Języki wysokiego poziomu i kompilatory (29)
- Standardy języka (30)
- Standard ANSI/ISO C (31)
- Standard C99 (31)
- Standard C11 (32)
- Korzystanie z C - siedem kroków (33)
- Krok 1. Określenie celów programu (33)
- Krok 2. Projektowanie programu (34)
- Krok 3. Pisanie kodu (34)
- Krok 4. Kompilacja (35)
- Krok 5. Uruchomienie programu (35)
- Krok 6. Testowanie i usuwanie błędów (35)
- Krok 7. Pielęgnowanie i modyfikowanie programu (36)
- Komentarz (36)
- Mechanika programowania (37)
- Pliki kodu obiektowego, pliki wykonywalne i biblioteki (38)
- UNIX (39)
- GNU Compiler Collection i LLVM (41)
- Linux (42)
- Kompilatory dla komputerów PC (43)
- Zintegrowane środowiska programistyczne (Windows) (43)
- Opcja podwójna - Windows/Linux (45)
- Język C a komputery Mac (45)
- Jak zorganizowano tę książkę (46)
- Konwencje zapisu (46)
- Czcionka (47)
- Tekst na ekranie (47)
- Informacje dodatkowe (48)
- Podsumowanie rozdziału (49)
- Pytania sprawdzające (49)
- Ćwiczenie (49)
- Prosty przykład języka C (51)
- Objaśnienie (53)
- Podejście 1. Szybkie streszczenie (53)
- Podejście 2. Szczegóły (55)
- Budowa prostego programu (64)
- Co zrobić, aby Twój program był czytelny? (65)
- Kolejny krok (66)
- Dokumentacja (66)
- Wielokrotne deklaracje (67)
- Mnożenie (67)
- Wyświetlanie wielu wartości (67)
- Wiele funkcji (68)
- Usuwanie błędów (69)
- Błędy składniowe (70)
- Błędy semantyczne (71)
- Stan programu (72)
- Słowa kluczowe (73)
- Kluczowe zagadnienia (74)
- Podsumowanie rozdziału (74)
- Pytania sprawdzające (75)
- Ćwiczenia (76)
- Program przykładowy (79)
- Co nowego? (81)
- Zmienne i stałe (82)
- Słowa kluczowe typów danych (83)
- Typy całkowite a typy zmiennoprzecinkowe (84)
- Liczba całkowita (85)
- Liczba zmiennoprzecinkowa (85)
- Typy danych w C (86)
- Typ int (86)
- Inne typy całkowite (91)
- Korzystanie ze znaków - typ char (96)
- Typ _Bool (102)
- Typy przenośne (102)
- Typy float, double, long double (105)
- Typy zespolone i urojone (110)
- Inne typy (111)
- Rozmiary typów (113)
- Korzystanie z typów danych (114)
- Uwaga na argumenty (115)
- Jeszcze jeden przykład (117)
- Co się dzieje? (117)
- Bufor wyjścia (118)
- Kluczowe zagadnienia (119)
- Podsumowanie rozdziału (119)
- Pytania sprawdzające (120)
- Ćwiczenia (122)
- Na początek... program (126)
- Łańcuchy znakowe. Wprowadzenie (127)
- Tablice typu char i znak zerowy (127)
- Korzystanie z łańcuchów (128)
- Funkcja strlen() (130)
- Stałe i preprocesor C (132)
- Modyfikator const (135)
- Stałe standardowe (136)
- Poznać i wykorzystać printf() i scanf() (138)
- Funkcja printf() (138)
- Korzystanie z printf() (139)
- Modyfikatory specyfikatorów konwersji dla printf() (141)
- Znaczenie konwersji (147)
- Korzystanie z funkcji scanf() (154)
- Modyfikator * w funkcjach printf() i scanf() (160)
- Praktyczne wskazówki (161)
- Kluczowe zagadnienia (163)
- Podsumowanie rozdziału (164)
- Pytania sprawdzające (164)
- Ćwiczenia (167)
- Wstęp do pętli (170)
- Podstawowe operatory (172)
- Operator przypisania: = (172)
- Operator dodawania: + (175)
- Operator odejmowania: - (176)
- Operatory znaku: - i + (176)
- Operator mnożenia: * (177)
- Operator dzielenia: / (179)
- Priorytet operatorów (180)
- Priorytet i kolejność obliczeń (182)
- Niektóre inne operatory (183)
- Operator sizeof i typ size_t (183)
- Operator modulo: % (184)
- Operatory inkrementacji i dekrementacji: ++ i -- (186)
- Dekrementacja -- (190)
- Priorytet (191)
- Nie próbuj być zbyt sprytny (191)
- Wyrażenia i instrukcje (193)
- Wyrażenia (193)
- Instrukcje (194)
- Instrukcje złożone (bloki) (197)
- Konwersje typów (199)
- Operator rzutowania (202)
- Funkcje z argumentami (203)
- Przykładowy program (206)
- Zagadnienia kluczowe (207)
- Podsumowanie rozdziału (208)
- Pytania sprawdzające (209)
- Ćwiczenia (212)
- Wracamy do pętli while (216)
- Komentarz (217)
- Pętla odczytująca w stylu C (219)
- Instrukcja while (219)
- Zakończenie pętli while (220)
- Kiedy kończy się pętla? (220)
- while jako pętla z warunkiem wejścia (221)
- Wskazówki dotyczące składni (222)
- Co jest większe? Korzystanie z operatorów i wyrażeń relacyjnych (223)
- Czym jest prawda? (225)
- Co jeszcze jest prawdą? (226)
- Problemy z prawdą (227)
- Nowy typ _Bool (229)
- Priorytet operatorów relacyjnych (231)
- Pętle nieokreślone i pętle liczące (232)
- Pętla for (234)
- Elastyczność pętli for (235)
- Inne operatory przypisania: +=, -=, *=, /=, %= (239)
- Operator przecinkowy: , (241)
- Zenon z Elei kontra pętla for (244)
- Pętla z warunkiem wyjścia - do while (245)
- Której pętli użyć? (248)
- Pętle zagnieżdżone (249)
- Omówienie (250)
- Inny wariant (250)
- Tablice (251)
- Współpraca tablicy i pętli for (252)
- Przykład wykorzystujący pętlę i wartość zwracaną przez funkcję (254)
- Omówienie programu (257)
- Korzystanie z funkcji zwracających wartości (258)
- Zagadnienia kluczowe (258)
- Podsumowanie rozdziału (259)
- Pytania sprawdzające (260)
- Ćwiczenia (264)
- Instrukcja if (270)
- Dodajemy else (272)
- Kolejny przykład: funkcje getchar() i putchar() (273)
- Rodzina funkcji znakowych ctype.h (276)
- Wybór spośród wielu możliwości - else if (278)
- Łączenie else z if (281)
- Więcej o zagnieżdżonych instrukcjach if (283)
- Bądźmy logiczni (287)
- Zapis alternatywny - plik nagłówkowy iso646.h (289)
- Priorytet (289)
- Kolejność obliczeń (290)
- Zakresy (291)
- Program liczący słowa (292)
- Operator warunkowy: ?: (296)
- Dodatki do pętli - continue i break (298)
- Instrukcja continue (298)
- Instrukcja break (301)
- Wybór spośród wielu możliwości - switch i break (304)
- Korzystanie z instrukcji switch (305)
- Pobieranie tylko pierwszego znaku w wierszu (307)
- Etykiety wielokrotne (308)
- Switch a if else (309)
- Instrukcja goto (311)
- Unikanie goto (311)
- Kluczowe zagadnienia (314)
- Podsumowanie rozdziału (315)
- Pytania sprawdzające (316)
- Ćwiczenia (319)
- Jednoznakowe we-wy - getchar() i putchar() (324)
- Bufory (325)
- Kończenie danych wprowadzanych z klawiatury (327)
- Pliki, strumienie i dane wprowadzane z klawiatury (327)
- Koniec pliku (329)
- Przekierowywanie a pliki (332)
- Przekierowywanie w systemach UNIX, Linux i Windows (332)
- Tworzenie przyjaźniejszego interfejsu użytkownika (337)
- Współpraca z buforowanym wejściem (337)
- Łączenie wejścia liczbowego i znakowego (340)
- Sprawdzanie poprawności danych wejściowych (343)
- Analiza programu (347)
- Strumienie wejściowe a liczby (348)
- Menu (349)
- Zadania (349)
- W kierunku sprawnego działania (350)
- Łączenie danych znakowych i numerycznych (352)
- Zagadnienia kluczowe (355)
- Podsumowanie rozdziału (356)
- Pytania sprawdzające (356)
- Ćwiczenia (357)
- Przypomnienie (361)
- Tworzenie i wykorzystanie prostej funkcji (363)
- Analiza programu (363)
- Argumenty funkcji (366)
- Definiowanie funkcji pobierającej argument - argumenty formalne (368)
- Prototyp funkcji pobierającej argumenty (369)
- Wywoływanie funkcji pobierającej argumenty - argumenty faktyczne (369)
- Punkt widzenia czarnej skrzynki (370)
- Zwracanie wartości z wykorzystaniem instrukcji return (371)
- Typy funkcji (373)
- Prototypy ANSI C (375)
- Problem (375)
- ANSI C na ratunek! (376)
- Brak argumentów a argumenty nieokreślone (377)
- Potęga prototypów (378)
- Rekurencja (379)
- Rekurencja bez tajemnic (379)
- Podstawy rekurencji (380)
- Rekurencja końcowa (382)
- Rekurencja i odwracanie kolejności działań (384)
- Za i przeciw rekurencji (386)
- Kompilowanie programów zawierających więcej niż jedną funkcję (387)
- Unix (387)
- Linux (388)
- DOS (kompilatory wiersza poleceń) (388)
- Środowiska IDE dla Windows i OS X (388)
- Korzystanie z plików nagłówkowych (388)
- Uzyskiwanie adresów: operator & (392)
- Modyfikacja zmiennych w funkcji wywołującej (394)
- Wskaźniki: pierwsze spojrzenie (396)
- Operator dereferencji: * (396)
- Deklarowanie wskaźników (396)
- Wykorzystanie wskaźników do komunikacji pomiędzy funkcjami (398)
- Kluczowe zagadnienia (402)
- Podsumowanie rozdziału (403)
- Pytania sprawdzające (403)
- Ćwiczenia (404)
- Tablice (407)
- Inicjalizacja (408)
- Oznaczona inicjalizacja (C99) (412)
- Przypisywanie wartości do tablic (414)
- Zakres tablic (414)
- Określanie rozmiaru tablicy (416)
- Tablice wielowymiarowe (417)
- Inicjalizacja tablicy dwuwymiarowej (420)
- Więcej wymiarów (421)
- Wskaźniki do tablic (422)
- Funkcje, tablice i wskaźniki (425)
- Korzystanie z parametrów wskaźnikowych (428)
- Komentarz - wskaźniki i tablice (430)
- Działania na wskaźnikach (430)
- Ochrona zawartości tablicy (435)
- Zastosowanie słowa kluczowego const w parametrach formalnych (436)
- Więcej o const (437)
- Wskaźniki a tablice wielowymiarowe (439)
- Wskaźniki do tablic wielowymiarowych (442)
- Zgodność wskaźników (444)
- Funkcje a tablice wielowymiarowe (446)
- Tablice o zmiennym rozmiarze (VLA, ang. variable - length array) (449)
- Literały złożone (453)
- Zagadnienia kluczowe (456)
- Podsumowanie rozdziału (456)
- Pytania sprawdzające (458)
- Ćwiczenia (460)
- Reprezentacja łańcuchów i łańcuchowe wejście-wyjście (463)
- Definiowanie łańcuchów (464)
- Wskaźniki a łańcuchy (473)
- Wczytywanie łańcuchów (475)
- Tworzenie miejsca (475)
- Niesławna funkcja gets() (475)
- Alternatywy dla funkcji gets() (477)
- Funkcja scanf() (484)
- Wyświetlanie łańcuchów (486)
- Funkcja puts() (486)
- Funkcja fputs() (488)
- Funkcja printf() (488)
- Zrób to sam (489)
- Funkcje łańcuchowe (491)
- Funkcja strlen() (492)
- Funkcja strcat() (493)
- Funkcja strncat() (495)
- Funkcja strcmp() (496)
- Funkcje strcpy() i strncpy() (503)
- Funkcja sprintf() (508)
- Inne funkcje łańcuchowe (509)
- Przykład użycia. Sortowanie łańcuchów (512)
- Sortowanie wskaźników zamiast łańcuchów (513)
- Algorytm sortowania przez selekcję (514)
- Łańcuchy a funkcje znakowe z rodziny ctype.h (515)
- Argumenty wiersza poleceń (517)
- Argumenty wiersza poleceń w środowiskach zintegrowanych (519)
- Argumenty linii poleceń w systemie Macintosh (520)
- Konwersja łańcuchów do liczb (520)
- Zagadnienia kluczowe (523)
- Podsumowanie rozdziału (524)
- Pytania sprawdzające (525)
- Ćwiczenia (528)
- Klasy zmiennych (532)
- Zasięg zmiennej (533)
- Łączność zmiennej (535)
- Czas trwania zmiennej (537)
- Zmienne automatyczne (538)
- Zmienne rejestrowe (543)
- Zmienne statyczne o zasięgu blokowym (543)
- Zmienne statyczne o łączności zewnętrznej (545)
- Zmienne statyczne o łączności wewnętrznej (550)
- Programy wieloplikowe (551)
- Specyfikatory klasy zmiennych - podsumowanie (551)
- Klasy zmiennych a funkcje (554)
- Którą klasę wybrać? (555)
- Funkcje pseudolosowe i zmienne statyczne (555)
- Rzut kostką (559)
- Przydział pamięci. Funkcje malloc() i free() (563)
- Znaczenie funkcji free() (568)
- Funkcja calloc() (568)
- Dynamiczny przydział pamięci a tablice o zmiennym rozmiarze (569)
- Klasy zmiennych a dynamiczny przydział pamięci (570)
- Kwalifikatory typu ANSI C (572)
- Kwalifikator typu const (572)
- Kwalifikator typu volatile (575)
- Kwalifikator typu restrict (576)
- Kwalifikator _Atomic (C11) (577)
- Stare słowa kluczowe w nowych miejscach (578)
- Kluczowe zagadnienia (579)
- Podsumowanie rozdziału (579)
- Pytania sprawdzające (581)
- Ćwiczenia (582)
- Wymiana informacji z plikami (587)
- Czym jest plik? (588)
- Poziomy wejścia-wyjścia (590)
- Pliki standardowe (590)
- Standardowe wejście-wyjście (591)
- Sprawdzanie argumentów wiersza poleceń (592)
- Funkcja fopen() (593)
- Funkcje getc() i putc() (595)
- Znak końca pliku EOF (ang. end of file) (595)
- Funkcja fclose() (596)
- Wskaźniki do plików standardowych (597)
- Niewyszukany program kompresujący pliki (597)
- Plikowe wejście-wyjście - fprintf(), fscanf(), fgets() i fputs() (599)
- Funkcje fprintf() i fscanf() (599)
- Funkcje fgets() i fputs() (601)
- Przygody z dostępem swobodnym - fseek() i ftell() (602)
- Jak działają funkcje fseek() i ftell()? (603)
- Tryb binarny a tryb tekstowy (604)
- Przenośność (605)
- Funkcje fgetpos() i fsetpos() (606)
- Za kulisami standardowego wejścia-wyjścia (606)
- Inne standardowe funkcje wejścia-wyjścia (607)
- Funkcja int ungetc() (608)
- Funkcja int fflush() (608)
- Funkcja int setvbuf() (608)
- Binarne wejście-wyjście: fread() i fwrite() (609)
- Funkcja size_t fwrite() (611)
- Funkcja size_t fread() (611)
- Funkcje int feof(FILE *fp) oraz int ferror(FILE *fp) (612)
- Przykład (612)
- Dostęp swobodny w binarnym wejściu-wyjściu (615)
- Zagadnienia kluczowe (617)
- Podsumowanie rozdziału (618)
- Pytania sprawdzające (619)
- Ćwiczenia (621)
- Przykładowy problem. Tworzenie spisu książek (626)
- Deklaracja struktury (627)
- Definiowanie zmiennej strukturalnej (628)
- Inicjalizacja struktury (630)
- Odwołania do składników struktury (630)
- Inicjalizatory oznaczone struktur (631)
- Tablice struktur (632)
- Deklarowanie tablicy struktur (634)
- Wskazywanie składników tablicy struktur (634)
- Szczegóły programu (635)
- Struktury zagnieżdżone (636)
- Wskaźniki do struktur (638)
- Deklaracja i inicjalizacja wskaźnika do struktury (639)
- Dostęp do składników za pomocą wskaźnika (640)
- Struktury a funkcje (641)
- Przekazywanie składników struktur (641)
- Korzystanie z adresu struktury (642)
- Przekazywanie struktury jako argumentu (643)
- Więcej o nowym, ulepszonym statusie struktury (644)
- Struktury czy wskaźniki do struktur? (648)
- Tablice znakowe lub wskaźniki do znaków w strukturze (649)
- Struktury, wskaźniki i funkcja malloc() (650)
- Literały złożone i struktury (C99) (652)
- Elastyczne składniki tablicowe (C99) (654)
- Struktury anonimowe (C11) (657)
- Funkcje korzystające z tablic struktur (657)
- Zapisywanie zawartości struktury w pliku (659)
- Przykład zapisu struktury (660)
- Omówienie programu (663)
- Struktury. Co dalej? (664)
- Unie. Szybkie spojrzenie (665)
- Wykorzystywanie unii (666)
- Unie anonimowe (C11) (667)
- Typy wyliczeniowe (669)
- Stałe enum (670)
- Wartości domyślne (670)
- Przypisywane wartości (670)
- Użycie enum (670)
- Współdzielona przestrzeń nazw (672)
- typedef: szybkie spojrzenie (673)
- Udziwnione deklaracje (675)
- Funkcje a wskaźniki (677)
- Kluczowe zagadnienia (684)
- Podsumowanie rozdziału (685)
- Pytania sprawdzające (686)
- Ćwiczenia (689)
- Liczby binarne, bity i bajty (694)
- Binarne liczby całkowite (694)
- Liczby całkowite ze znakiem (695)
- Binarne liczby zmiennoprzecinkowe (696)
- Inne systemy liczbowe (697)
- System ósemkowy (697)
- System szesnastkowy (698)
- Operatory bitowe (698)
- Bitowe operatory logiczne (699)
- Zastosowanie. Maski (701)
- Zastosowanie. Ustawianie bitów (włączanie bitów) (702)
- Zastosowanie. Zerowanie bitów (wyłączanie bitów) (702)
- Zastosowanie. Odwracanie bitów (703)
- Zastosowanie. Sprawdzenie wartości bitu (703)
- Bitowe operatory przesunięcia (704)
- Przykład (706)
- Kolejny przykład (708)
- Pola bitowe (710)
- Przykład (711)
- Pola bitowe a operatory bitowe (715)
- Mechanizmy wyrównania danych (C11) (722)
- Kluczowe zagadnienia (724)
- Podsumowanie rozdziału (725)
- Pytania sprawdzające (726)
- Ćwiczenia (727)
- Pierwsze kroki w translacji programu (732)
- Stałe symboliczne. #define (733)
- Tokeny (737)
- Przedefiniowywanie stałych (737)
- #define i argumenty (738)
- Argumenty makr w łańcuchach (741)
- Łącznik preprocesora. Operator ## (742)
- Makra o zmiennej liczbie argumentów: ... i __VA_ARGS__ (743)
- Makro czy funkcja? (744)
- Dołączanie plików. #include (746)
- Pliki nagłówkowe. Przykład (747)
- Zastosowania plików nagłówkowych (749)
- Inne dyrektywy (750)
- Dyrektywa #undef (750)
- Zdefiniowany. Z perspektywy preprocesora C (751)
- Kompilacja warunkowa (751)
- Makra predefiniowane (756)
- #line i #error (757)
- #pragma (758)
- Słowo kluczowe _Generic (C11) (759)
- Funkcje wplatane (C99) (761)
- Funkcje bezpowrotne (C11) (764)
- Biblioteka języka C (764)
- Uzyskiwanie dostępu do biblioteki C (764)
- Korzystanie z opisów funkcji (765)
- Biblioteka funkcji matematycznych (767)
- Odrobina trygonometrii (768)
- Warianty typów zmiennoprzecinkowych (770)
- Biblioteka tgmath.h (C99) (771)
- Biblioteka narzędzi ogólnego użytku (772)
- Funkcje exit() i atexit() (773)
- Funkcja qsort() (775)
- Biblioteka assert.h (780)
- Stosowanie asercji (780)
- _Static_assert (C11) (781)
- Funkcje memcpy() i memmove() z biblioteki string.h (782)
- Zmienna liczba argumentów. stdarg.h (785)
- Zagadnienie kluczowe (787)
- Podsumowanie rozdziału (788)
- Pytania sprawdzające (788)
- Ćwiczenia (790)
- Poznajemy reprezentację danych (794)
- Listy łączone (797)
- Korzystanie z listy łączonej (801)
- Refleksje (805)
- Abstrakcyjne typy danych (ATD) (806)
- Więcej abstrakcji (807)
- Budowanie interfejsu (808)
- Korzystanie z interfejsu (813)
- Implementacja interfejsu (815)
- Kolejki (822)
- Definicja kolejki jako abstrakcyjnego typu danych (822)
- Definicja interfejsu (823)
- Implementacja reprezentacji danych (824)
- Testowanie kolejki (832)
- Symulowanie za pomocą kolejki (834)
- Lista łączona czy tablica? (840)
- Drzewa binarne (844)
- Drzewo binarne jako ATD (846)
- Interfejs drzewa binarnego (846)
- Implementacja drzewa binarnego (849)
- Testowanie drzewa (863)
- Uwagi o drzewach (868)
- Co dalej? (869)
- Zagadnienia kluczowe (870)
- Podsumowanie rozdziału (871)
- Pytania sprawdzające (871)
- Ćwiczenia (872)
- I. Lektura uzupełniająca (915)
- II. Operatory w języku C (919)
- III. Podstawowe typy i klasy zmiennych (925)
- IV. Wyrażenia, instrukcje i przepływ sterowania w programie (930)
- V. Standardowa biblioteka ANSI C oraz rozszerzenia standardu C99 i C11 (937)
- VI. Rozszerzone typy całkowite (987)
- VII. Obsługa rozszerzonych zbiorów znaków (991)
- VIII. Efektywniejsze obliczenia numeryczne w C99 i C11 (997)
- IX. Różnice między C a C++ (1006)
O autorze (19)
Przedmowa (21)
Rozdział 1. Zaczynamy (23)
Rozdział 2. Wstęp do C (51)
Rozdział 3. Dane w C (79)
Rozdział 4. Łańcuchy znakowe i formatowane wejście-wyjście (125)
Rozdział 5. Operatory, wyrażenia i instrukcje (169)
Rozdział 6. Instrukcje sterujące C. Pętle (215)
Rozdział 7. Instrukcje sterujące C. Rozgałęzienia i skoki (269)
Rozdział 8. Znakowe wejście-wyjście i przekierowywanie (323)
Rozdział 9. Funkcje (361)
Rozdział 10. Tablice i wskaźniki (407)
Rozdział 11. Łańcuchy znakowe i funkcje łańcuchowe (463)
Rozdział 12. Klasy zmiennej, łączność i zarządzanie pamięcią (531)
Rozdział 13. Obsługa plików (587)
Rozdział 14. Struktury i inne formy danych (625)
Rozdział 15. Manipulowanie bitami (693)
Rozdział 16. Preprocesor i biblioteka C (731)
Rozdział 17. Zaawansowana reprezentacja danych (793)
Dodatek A. Odpowiedzi na pytania sprawdzające (875)
Dodatek B. Dokumentacja (915)
Skorowidz (1013)
Dzieki opcji "Druk na żądanie" do sprzedaży wracają tytuły Grupy Helion, które cieszyły sie dużym zainteresowaniem, a których nakład został wyprzedany.
Dla naszych Czytelników wydrukowaliśmy dodatkową pulę egzemplarzy w technice druku cyfrowego.
Co powinieneś wiedzieć o usłudze "Druk na żądanie":
- usługa obejmuje tylko widoczną poniżej listę tytułów, którą na bieżąco aktualizujemy;
- cena książki może być wyższa od początkowej ceny detalicznej, co jest spowodowane kosztami druku cyfrowego (wyższymi niż koszty tradycyjnego druku offsetowego). Obowiązująca cena jest zawsze podawana na stronie WWW książki;
- zawartość książki wraz z dodatkami (płyta CD, DVD) odpowiada jej pierwotnemu wydaniu i jest w pełni komplementarna;
- usługa nie obejmuje książek w kolorze.
W przypadku usługi "Druk na żądanie" termin dostarczenia przesyłki może obejmować także czas potrzebny na dodruk (do 10 dni roboczych)
Masz pytanie o konkretny tytuł? Napisz do nas: sklep[at]helion.pl.
Książka, którą chcesz zamówić pochodzi z końcówki nakładu. Oznacza to, że mogą się pojawić drobne defekty (otarcia, rysy, zagięcia).
Co powinieneś wiedzieć o usłudze "Końcówka nakładu":
- usługa obejmuje tylko książki oznaczone tagiem "Końcówka nakładu";
- wady o których mowa powyżej nie podlegają reklamacji;
Masz pytanie o konkretny tytuł? Napisz do nas: sklep[at]helion.pl.


Oceny i opinie klientów: Język C. Szkoła programowania. Wydanie VI Stephen Prata (63)
(54)
(8)
(1)
(0)
(0)
(0)
6 potwierdzona zakupem i oceniona przez: Mateusz, 2021-02-10
6 potwierdzona zakupem i oceniona przez: 2020-08-01
6 potwierdzona zakupem i oceniona przez: Jakub Standarski, 2020-04-14
6 potwierdzona zakupem i oceniona przez: 2019-11-05
6 potwierdzona zakupem i oceniona przez: 2019-11-04
6 oceniona przez: 2019-06-12
6 potwierdzona zakupem i oceniona przez: 2018-11-05
6 oceniona przez: 2018-10-09
6 potwierdzona zakupem i oceniona przez: informatyk 2018-07-26
6 oceniona przez: 2018-06-03
6 potwierdzona zakupem i oceniona przez: Paweł, Elektronik 2017-02-10
6 oceniona przez: Michał Pawliński, Student zaoczny informatyki (sprzedawca ŻABKA) 2017-01-20
6 oceniona przez: Technik Mechanik 2016-04-28
6 potwierdzona zakupem i oceniona przez: 2016-04-21
5 oceniona przez: Mariusz, 2021-09-10
Oceny i opinie poprzedniego wydania
6 oceniona przez: 2018-01-25
6 oceniona przez: Student 2016-03-25
6 oceniona przez: 2016-03-05
6 oceniona przez: mgr inż. elektryk, student informatyki 2014-01-18
6 oceniona przez: 2014-01-07
6 oceniona przez: 2014-01-06
6 oceniona przez: Matt, Student 2013-12-07
6 oceniona przez: Jarosław Pełnikowski, 2013-11-23
6 oceniona przez: Łukasz, elektronik 2013-11-16
6 oceniona przez: D.L, 2013-10-24
6 oceniona przez: 2013-07-27
6 potwierdzona zakupem i oceniona przez: Michał Słowik, Uczeń 2013-04-07
6 oceniona przez: Konrad, student 2013-03-03
6 oceniona przez: ssssiegrzesiek@gmail.com, Uczeń 2012-04-06
6 potwierdzona zakupem i oceniona przez: Maciej, programista CNC 2011-11-25
6 oceniona przez: 2011-04-22
6 oceniona przez: Hanami, studentka informatyki 2010-09-06
6 oceniona przez: Dawid Suder, 2010-07-29
6 oceniona przez: Tomasz, 2009-08-11
6 oceniona przez: 2009-07-06
6 oceniona przez: 2009-01-05
6 oceniona przez: Grzegorz, 2008-12-11
6 oceniona przez: ddlp, 2008-08-19
6 oceniona przez: 2008-06-30
6 oceniona przez: 2008-06-17
6 oceniona przez: Marcin Sochoń, 2008-03-20
6 oceniona przez: Adam D, 2008-03-04
6 oceniona przez: 2008-02-14
6 oceniona przez: 2008-02-11
6 potwierdzona zakupem i oceniona przez: Mateusz Polnik, 2007-03-26
6 oceniona przez: rootboy, 2007-03-19
6 oceniona przez: Przemek, 2006-12-22
6 oceniona przez: Łukasz Bober, 2006-12-08
6 oceniona przez: 2006-12-04
6 oceniona przez: Radek, 2006-12-01
6 oceniona przez: Paweł Torcz, 2006-11-27
6 oceniona przez: Ares, 2006-10-30
6 oceniona przez: Krzysztof Kubicki, 2006-10-12
6 oceniona przez: 2006-09-26
6 oceniona przez: 2006-08-28
5 oceniona przez: Mariusz, student (elektronika i telekomunikacja) 2014-08-24
5 oceniona przez: 2014-05-02
5 oceniona przez: 2010-11-15
5 oceniona przez: O.Ł, uczen 2010-08-30
5 oceniona przez: 2009-07-23
5 oceniona przez: Łukasz, 2009-02-13
5 oceniona przez: Marcin nvm, 2008-07-04
4 potwierdzona zakupem i oceniona przez: student 2014-08-31
więcej opinii