Programowanie w jezyku C FAQ.pdf
(
259 KB
)
Pobierz
C:\Andrzej\PDF\ABC nagrywania p³yt CD\1 strona.cdr
IDZ DO
PRZYK£ADOW
Y ROZDZIA£
Programowanie
SPIS TRECI
w jêzyku C. FAQ
KATALOG KSI¥¯EK
Autor: Steve Summit
T³umaczenie: Przemys³aw Kowalczyk
ISBN: 83-7361-094-4
Tytu³ orygina³
u:
C Programming FAQs
Format: B5, stron: 400
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
DODAJ DO KOSZYKA
Przys³owie „kto pyta, nie b³¹dzi” nie zawiera ca³ej prawdy. Nie wystarczy pytaæ, trzeba
jeszcze znajdowaæ odpowiedzi. Ksi¹¿ka „Programowanie w jêzyku C. FAQ” to zbiór
kilkuset odpowiedzi na najczêciej zadawane pytania na temat tego jêzyka
programowania. Z pewnoci¹ czêæ z przedstawionych tu pytañ ju¿ pojawi³a siê
w Twojej praktyce programistycznej (pamiêtasz, ile czasu straci³e poszukuj¹c
odpowiedzi?). Inne problemy dopiero siê pojawi¹ i jeli na Twojej pó³ce bêdzie ta
ksi¹¿ka, szybko znajdziesz w niej zwiêz³e, ale wyczerpuj¹ce rozwi¹zanie czêsto
wzbogacone przyk³adem kodu ród³owego.
Chocia¿ ksi¹¿ka ¿adn¹ miar¹ nie powinna byæ traktowana jako podrêcznik, z którego
mo¿na nauczyæ siê programowania w C, z pewnoci¹ przyda siê ka¿dej osobie
u¿ywaj¹cej tego jêzyka w codziennej praktyce. Autor porusza wiele przydatnych
zagadnieñ obejmuj¹cych szeroki zestaw tematów.
Omówiono miêdzy innymi:
• Deklaracje
• Struktury i unie
• Puste wskaniki
• Wyra¿enia
• Makroprocesor
• Alokacjê pamiêci
• Ró¿nice miêdzy standardami C
• Standardow¹ bibliotekê wejcia-wyjcia
• Kwestie zwi¹zane z systemami operacyjnymi
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
O NOWOCIACH
ZAMÓW CENNIK
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
Spis treci
Pytania..............................................................................................9
Przedmowa......................................................................................37
Wprowadzenie .................................................................................41
Jak korzysta z tej ksiki? ......................................................................................41
Format pyta..........................................................................................................43
Przykłady kodu ......................................................................................................43
Organizacja ksiki.................................................................................................44
Rozdział 1. Deklaracje i inicjalizacja...................................................................47
Podstawowe typy....................................................................................................47
Deklaracje wska&ników...........................................................................................50
Styl deklaracji.........................................................................................................51
Klasy pami,ci.........................................................................................................54
Definicje typów......................................................................................................55
Kwalifikator const ..................................................................................................59
Złoone deklaracje..................................................................................................59
Rozmiary tablic ......................................................................................................62
Problemy z deklaracjami .........................................................................................64
Przestrze nazw......................................................................................................65
Inicjalizacja............................................................................................................69
Rozdział 2. Struktury, unie i typy wyliczeniowe...................................................73
Deklaracje struktur..................................................................................................73
Działania na strukturach..........................................................................................78
Wyrównywanie pól struktur.....................................................................................80
Dost,p do pól struktur.............................................................................................82
Róne pytania na temat struktur...............................................................................83
Unie ......................................................................................................................84
Typy wyliczeniowe.................................................................................................85
Pola bitowe ............................................................................................................86
Rozdział 3. Wyra"enia........................................................................................89
Kolejno: obliczania ...............................................................................................89
Inne pytania na temat wyrae.................................................................................96
Reguły zachowywania...........................................................................................100
6
Programowanie w jzyku C. FAQ
Rozdział 4. Wska%niki......................................................................................103
Podstawy.............................................................................................................103
Działania na wska&nikach......................................................................................105
Wska&niki jako parametry funkcji ..........................................................................106
Róne zastosowania wska&ników ...........................................................................110
Rozdział 5. Wska%niki puste ............................................................................113
Wska&niki puste i literały wska&nika pustego ..........................................................113
Makrodefinicja NULL...........................................................................................116
Retrospektywa......................................................................................................121
Co mona znale& pod adresem 0? .........................................................................124
Rozdział 6. Tablice i wska%niki.........................................................................127
Podstawowe zwizki mi,dzy tablicami i wska&nikami..............................................128
Tablicom nie mona przypisywa warto:ci..............................................................131
Retrospektywa......................................................................................................132
Wska&niki do tablic...............................................................................................134
Dynamiczne tworzenie tablic .................................................................................136
Funkcje a tablice wielowymiarowe.........................................................................140
Rozmiary tablic ....................................................................................................143
Rozdział 7. Przydzielanie pami+ci.....................................................................145
Podstawowe problemy z przydzielaniem pami,ci.....................................................145
Wywoływanie funkcji malloc.................................................................................149
Problemy z funkcj malloc.....................................................................................152
Zwalnianie pami,ci...............................................................................................155
Rozmiar przydzielonych bloków ............................................................................158
Inne funkcje przydzielajce pami, ........................................................................159
Rozdział 8. Znaki i napisy................................................................................165
Rozdział 9. Wyra"enia i zmienne logiczne .........................................................171
Rozdział 10. Preprocesor j+zyka C .....................................................................175
Makrodefinicje .....................................................................................................175
Pliki nagłówkowe .................................................................................................180
Kompilacja warunkowa.........................................................................................183
Zaawansowane przetwarzanie................................................................................186
Makrodefinicje ze zmienn liczb argumentów........................................................189
Rozdział 11. Standard ANSI/ISO j+zyka C ..........................................................193
Standard ..............................................................................................................193
Prototypy funkcji..................................................................................................195
Kwalifikator const ................................................................................................198
Funkcja main........................................................................................................200
Wła:ciwo:ci preprocesora .....................................................................................203
Inne sprawy zwizane ze Standardem ANSI............................................................205
Stare lub niezgodne ze Standardem kompilatory ......................................................208
Kwestie zgodno:ci ................................................................................................211
Rozdział 12. Standardowa biblioteka wej4cia-wyj4cia .........................................215
Podstawy obsługi wej:cia-wyj:cia..........................................................................216
Formaty dla funkcji printf......................................................................................218
Formaty dla funkcji scanf......................................................................................222
Problemy z funkcj scanf ......................................................................................224
Inne funkcje z biblioteki wej:cia-wyj:cia ................................................................228
Spis treci
7
Otwieranie plików i operacje na nich......................................................................232
Przekierowywanie strumieni stdin i stdout...............................................................235
Obsługa wej:cia-wyj:cia w trybie binarnym............................................................237
Rozdział 13. Funkcje biblioteczne......................................................................241
Funkcje operujce na napisach...............................................................................241
Sortowanie...........................................................................................................247
Data i czas ...........................................................................................................251
Liczby losowe ......................................................................................................254
Inne funkcje biblioteczne.......................................................................................261
Rozdział 14. Liczby zmiennoprzecinkowe............................................................265
Rozdział 15. Listy argumentów o zmiennej długo4ci............................................273
Wywoływanie funkcji o zmiennej liczbie argumentów .............................................274
Implementacja funkcji o zmiennej liczbie argumentów.............................................275
Pobieranie argumentów z listy................................................................................280
Trudniejsze problemy............................................................................................283
Rozdział 16. Dziwne problemy............................................................................287
Rozdział 17. Styl...............................................................................................293
Rozdział 18. Narz+dzia i zasoby..........................................................................299
Narz,dzia.............................................................................................................299
Program lint .........................................................................................................301
Zasoby.................................................................................................................303
Rozdział 19. Kwestie zale"ne od systemu operacyjnego......................................309
Klawiatura i ekran.................................................................................................310
Inne operacje wej:cia-wyj:cia................................................................................316
Pliki i katalogi ......................................................................................................318
Bezpo:redni dost,p do pami,ci ..............................................................................324
Polecenia systemowe ............................................................................................326
Brodowisko procesu..............................................................................................329
Inne operacje zalene od systemu...........................................................................330
Retrospektywa......................................................................................................333
Rozdział 20. Ró"no4ci........................................................................................335
Przydatne techniki.................................................................................................336
Bity i bajty...........................................................................................................343
Wydajno:...........................................................................................................348
Instrukcja switch...................................................................................................352
Róne kwestie j,zykowe .......................................................................................354
Inne j,zyki ...........................................................................................................358
Algorytmy............................................................................................................359
Inne.....................................................................................................................364
Słownik .........................................................................................369
Bibliografia....................................................................................379
Skorowidz .....................................................................................383
Rozdział 6.
Tablice i wskaniki
Siła jzyka C wynika midzy innymi z ujednoliconego traktowania tablic i wskani-
ków. Bardzo łatwo jest za pomoc wskaników operowa! na tablicach czy symulo-
wa! tablice tworzone dynamicznie. Tak zwana odpowiednio$! wskaników i tablic
jest tak du%a, %e niektórzy programi$ci zapominaj o zasadniczych ró%nicach, my$l c,
%e s one identyczne, albo zakładaj c nieistniej ce midzy nimi podobie'stwa.
Podstaw „odpowiednio$ci” tablic i wskaników w jzyku C jest fakt, %e odwołania
do tablic „degeneruj si” do wskaników do pierwszego elementu tablicy, co opisuje
pytanie 6.3. Z tego powodu tablice s „obywatelami drugiej kategorii” w C — nigdy
nie posługujesz si tablicami jako całymi obiektami (na przykład aby skopiowa! je
albo przekaza! do funkcji). Kiedy u%yjesz nazwy tablicy, w wyra%eniu pojawi si
wskanik zamiast całej tablicy. Nawet operator indeksowania tablic
w rzeczywi-
sto$ci operuje na wskaniku. Wyra%enie
jest równowa%ne wyra%eniu wskani-
kowemu
.
Du%a cz$! tego rozdziału (szczególnie pytania „retrospektywne” 6.8 – 6.10) mo%e
wydawa! si powtarzaniem wci % tych samych wiadomo$ci. Wielu programistów ma
jednak spore kłopoty ze zrozumieniem zwi zków i ró%nic midzy wskanikami i ta-
blicami, w tym rozdziale staram si wyja$ni! je najlepiej, jak tylko potrafi. Je%eli
nudz Ci takie powtórki, mo%esz przeskoczy! do nastpnego rozdziału. Je%eli jednak
masz kłopoty z tablicami lub wskanikami, przeczytaj uwa%nie odpowiedzi, a po-
szczególne cz$ci układanki na pewno „wskocz na swoje miejsca”.
Plik z chomika:
bomaszko
Inne pliki z tego folderu:
C.pdf
(1778 KB)
Wstep do programowania w jezyku C.pdf
(358 KB)
W potrzasku jezyka C.pdf
(320 KB)
Programowanie w jezyku C Szybki start.pdf
(646 KB)
Programowanie w jezyku C FAQ.pdf
(259 KB)
Inne foldery tego chomika:
_ Basic _ QBasic ---
_ DOS _---
_ EDYTORY - IDE - GUI
_ EMULATORY - interpretery
_ LITERATURA
Zgłoś jeśli
naruszono regulamin