C_Rusz_glowa_cruszg.pdf

(2936 KB) Pobierz
Tytuł oryginału: Head First C
Tłumaczenie: Piotr Rajca
ISBN: 978-83-246-5232-7
© 2013 Helion S.A.
Authorized Polish translation of the English edition of
Head First C,
1
st
edition, ISBN
9781449399917
© David Griffiths and Dawn Griffiths.
This translation is published and sold by permission of O’Reilly Media, Inc., which owns
or controls all rights to publish and sell the same.
All rights reserved. No part of this book may be reproduced or transmitted in any form or
by any means, electronic or mechanical, including photocopying, recording or by any information
storage retrieval system, without permission from the Publisher.
Wszelkie prawa zastrzeżone. Nieautoryzowane rozpowszechnianie całości lub fragmentu
niniejszej publikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie kopii metodą
kserograficzną, fotograficzną, a także kopiowanie książki na nośniku filmowym, magnetycznym
lub innym powoduje naruszenie praw autorskich niniejszej publikacji.
Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi
bądź towarowymi ich właścicieli.
Wydawnictwo HELION dołożyło wszelkich starań, by zawarte w tej książce informacje były kompletne
i rzetelne. Nie bierze jednak żadnej odpowiedzialności ani za ich wykorzystanie, ani za związane z tym
ewentualne naruszenie praw patentowych lub autorskich. Wydawnictwo HELION nie ponosi również
żadnej odpowiedzialności za ewentualne szkody wynikłe z wykorzystania informacji zawartych w książce.
Wydawnictwo HELION
ul. Kościuszki 1c, 44-100 GLIWICE
tel. 32 231 22 19, 32 230 98 63
e-mail:
helion@helion.pl
WWW:
http://helion.pl
(księgarnia internetowa, katalog książek)
Pliki z przykładami omawianymi w książce można znaleźć pod adresem:
ftp://ftp.helion.pl/przyklady/cruszg.zip
Drogi Czytelniku!
Jeżeli chcesz ocenić tę książkę, zajrzyj pod adres
http://helion.pl/user/opinie/cruszg
Możesz tam wpisać swoje uwagi, spostrzeżenia, recenzję.
Kup książkę
Poleć książkę
Oceń książkę
Księgarnia internetowa
Lubię to! » Nasza społeczność
Printed in Poland.
Spis
treści
Spis treści (skrócony)
Wprowadzenie
1
2
3
4
5
6
7
8
9
10
11
12
A
B
Zaczynamy poznawać C.
Dajmy nurka
Pamięć i wskaźniki.
Na co wskazujesz?
Tworzenie małych programów narzędziowych.
Rób jedną rzecz, ale rób ją dobrze
Stosowanie wielu plików źródłowych.
Podziel go, rozbuduj go
1. laboratorium C.
Arduino
Struktury, unie i pola bitowe.
Wytocz swoje własne struktury
Struktury danych i pamięć dynamiczna.
Budowanie mostów
Zaawansowane funkcje.
Odpicuj swoje funkcje na maksa!
Biblioteki statyczne i dynamiczne.
Wymienialny kod
2. laboratorium C.
OpenCV
Procesy i wywołania systemowe.
Przekraczanie granic
Komunikacja pomiędzy procesami.
Dobrze jest porozmawiać
Gniazda i komunikacja sieciowa.
Nie ma drugiego takiego miejsca jak 127.0.0.1
Wątki.
To równoległy świat
3. laboratorium C.
Blasteroidy
Pozostałości.
Dziesięć najważniejszych rzeczy (których nie opisaliśmy)
Zagadnienia programowania w C.
Powtórka z całego materiału
xxvii
1
41
83
101
155
205
215
265
309
349
387
395
427
465
499
521
537
551
2,5 Łańcuchy znaków.
Teoria łańcuchów
W
Kup książkę
Spis treści (z prawdziwego zdarzenia)
Wprowadzenie
Twój mózg jest skoncentrowany na C.
Kiedy Ty starasz się czegoś
nauczyć,
Twój
mózg
robi
Ci przysługę i stara się, by ta wiedza nie została
utrwalona.
Twój mózg myśli sobie: „Lepiej
zostawić miejsce na naprawdę ważne rzeczy, takie jak dzikie zwierzęta, których należy unikać,
albo rozważania, czy jeżdżenie na snowboardzie w stroju Adama to dobry pomysł”. Jak zatem
możesz
oszukać
swój mózg i przekonać go, że Twoje życie zależy od znajomości C?
Dla kogo jest przeznaczona ta książka?
Wiemy, co sobie myślisz
Metapoznanie
Zmuś swój mózg do posłuszeństwa
Przeczytaj to
Zespół recenzentów technicznych
Podziękowania
xxviii
xxix
xxxi
xxxiii
xxxiv
xxxvi
xxxvii
ix
Poleć książkę
Spis
treści
1
Zaczynamy poznawać C
Dajmy nurka
Czy chcesz zajrzeć do głowy komputera?
Musisz napisać
kod działający naprawdę szybko,
na przykład na potrzeby nowej gry? A może
program na
Arduino?
Albo we własnej aplikacji na iPhone’a użyć
biblioteki napisanej przez
kogoś
innego? Jeśli tak, to skorzystaj z pomocy bohaterskiego C. C działa na
znacznie niższym
poziomie
niż większość innych języków programowania, a zatem zrozumienie go daje nam
znacznie większe pojęcie o tym,
co się naprawdę dzieje
w programie. C pozwala także lepiej
zrozumieć inne języki programowania. A zatem bierz się do pracy, przygotuj kompilator, a już
niedługo zaczniesz poznawać C.
C to język do pisania małych, szybkich programów
Ale jak wygląda skompilowany program napisany w C?
A jak można uruchomić program?
Dwa rodzaje poleceń
Oto kod, jakim aktualnie dysponujemy
Liczenie kart? W języku C?
Wartości logiczne to nie tylko sprawdzanie równości
Jak aktualnie wygląda nasz kod?
Pociąg do Switcherado
Czasami jeden raz nie wystarcza…
Pętle często mają taką samą strukturę…
Instrukcji break używamy, by wydostać się z pętli…
Twój niezbędnik C
2
5
9
14
15
17
18
25
26
29
30
31
40
x
Kup książkę
Poleć książkę
Spis
treści
2
Pamięć i wskaźniki
Na co wskazujesz?
Jeśli naprawdę chcesz zrobić coś odlotowego w języku C, musisz się
dowiedzieć, w jaki sposób zarządza on pamięcią.
Język C daje nam bardzo dużą
kontrolę
nad tym, jak programy korzystają z
pamięci komputera.
W tym rozdziale zajrzysz za kulisy i zobaczysz, co dokładnie dzieje się podczas
zapisywania
i odczytywania zmiennych.
Dowiesz się,
jak działają tablice,
jak unikać
paskudnych błędów
w trakcie wykonywania operacji na pamięci,
a przede wszystkim przekonasz się, że opanowanie
operacji na wskaźnikach i adresowania
pozwoli Ci stać się rewelacyjnym programistą C.
Kod C zawiera wskaźniki
Grzebiemy w pamięci
Stawiamy żagle ze wskaźnikami
Spróbujmy przekazać wskaźnik do zmiennej
Stosowanie wskaźników
Jak przekazać łańcuch znaków do funkcji?
Zmienne tablicowe są jak wskaźniki…
Co myśli komputer, wykonując nasz kod?
Jednak zmienne tablicowe nie są tak do końca wskaźnikami
Dlaczego tablice naprawdę zaczynają się od 0?
Dlaczego wskaźniki mają typ?
Stosowanie wskaźników do wprowadzania danych
Używając funkcji scanf(), uważaj!
Alternatywą dla scanf() jest fgets()
Literały łańcuchowe nie mogą być nigdy modyfikowane
Jeśli chcesz zmienić łańcuch — skopiuj go
Ściąga z pamięci
Twój niezbędnik C
42
43
44
47
48
53
54
55
59
61
62
65
66
67
72
74
80
81
Złapaliśmy
wiatr w żagle,
kapitanie!
Kurs na
Cancún!
latitude
Arr!
Wiosenne
wakacje!
32
31
4 100 000
xi
Kup książkę
Poleć książkę
Zgłoś jeśli naruszono regulamin