C/Program: Różnice pomiędzy wersjami

Dodane 43 bajty ,  5 lat temu
literówki, formatowanie
(literówki, formatowanie)
=Typy programów=
Typy programów wg liczby składników :
* [[C/Pierwszy_program|proste]] ( tylko 1 plik źródłowy )
* złożone
==Program prosty==
== Program złożony ==
 
Składniki programu złożonego :
* główny plik programu ( żródłowy źródłowy) : <code>main.c</code>
* dodatkowe pliki źródłowe ( moduły = jednostki translacji)
** tylko c
** c i h
* [[C/Biblioteki|biblioteki]] = pliki nagłówkowe ( .h) oraz pliki binarne (skompilowane)
 
 
=Składniki programu =
* znaki
* słowa
** kluczowe C
** pozostałe ( niekluczowe)
*** nazwy zmiennych i stałych
*** komentarze
** dyrektywy preprocesora<ref>Można napisać program bez dyrektyw preprocesora. Np. : "<code>void main(){}"</code>. Zwykle nawet mały porgramprogram zawiera przynajmniej 1 dyrektywę.</ref>
* procedury ( podprogramy)
* pliki
** źródłowe ( c lub h )
** binarne
 
* + - / * = ? < >
 
jest fragmentem znaków ASCII i UTF-8 ( ASCII jest podzbiorem UTF-8).
 
Z punktu widzenia kodowania plik  źródłowy w c jest to tekst zakodowany w ASCII<ref>[http://stackoverflow.com/questions/7075731/ascii-english-text-ascii-c-program-text-question stackoverflow question : ascii-english-text-ascii-c-program-text-question]</ref>
( UTF-8 <ref>[https://library.oreilly.com/book/0636920033677/21st-century-c-2nd-edition/123.xhtml?ref=toc#_the_encoding_for_c_code 21st-century-c-2nd-edition : the_encoding_for_c_code]</ref>) z rozszerzeniem c lub h.
Oczywiście w c można przetwarzać tekst zakodowany w innych systemach, jak UTF<ref>[http://www.cprogramming.com/tutorial/unicode.html Unicode in C and C++: What You Can Do About It Today by Jeff Bezanson]</ref>
 
Problemem mogą być :
* znaki końca linii ( ang. line-endings ) <ref>[[wikipedia:en:Newline#In_programming_languages]]</ref>
** CRLF = <code>\r\n</code> ( Windows)
** LF = <code>\n</code> (Linux)
* [[Programowanie_w_systemie_UNIX/Kodowanie#Podobne_znaki|kopiowanie i wklejanie]]
 
|-
| <code>[[Znakowy typ danych|char]]</code>
| <code>[[InstrukcjaC/Instrukcje skokusterujące#goto|goto]]</code>
| <code>[[Zmienna statyczna|static]]</code>
| <code>_Atomic</code>
| <code>continue</code>
| <code>[[Inline (programowanie)|inline]]</code>
| <code>[[InstrukcjaC/Instrukcje wyborusterujące#switch|switch]]</code>
| <code>_Complex</code>
|-
|}
 
=Źródła=
=Żródła=
<references/>