Temat: C - konwencje nazewnictwa i styl programowania

Poniżej zamieszczam wskazówki dotyczące stylu programowania w języku C

Nazwy zmiennych zaczynamy od rzeczownika pisanego małą literą.
Kolejne słowa w nazwach możemy pisać wielką literą lub rozdzielać podkreślnikiem:
(wybieramy jeden sposób i konsekwentnie się go trzymamy)

double amplituda_szumu;   //ten sposob jest czesciej spotykany w C

struct ObrazPgm obraz_wejsciowy;

double amplitudaSzumu;

Jednoliterowe nazwy zmiennych stosujemy w typowych przypadkach lub dla stałych fizycznych:

int i, j;  //zmienne do iterowania w petlach

char c; //zmienna do wczytywania znaku

double t, f; //czas i czestotliwosc

Nazwy funkcji zaczynamy od czasownika pisanego małą literą na zasadzie zrób_coś_z_czymś.
Kolejne słowa w nazwach możemy pisać wielką literą lub rozdzielać podkreślnikiem.

Nazwa funkcji powinna sugerować, co dana funkcja robi. Jeżeli nie jesteśmy w stanie jej tak sformułować, to może oznaczać, że trzeba ją ponownie przemyśleć.

int losuj_liczbe(void);

int losujLiczbe(void);

Nazwy makr piszemy WIELKIMI_LITERAMI z podkreślnikiem pomiędzy słowami:

#define LICZBA_PROBEK 100

Nazwy struktur zaczynamy od rzeczownika pisanego wielką literą:

struct ObrazPgm {
   ...
}

Stosujemy jednolity język (polski lub angielski), nie mieszamy (zarówno jeżeli chodzi o program jako całość, jak i pojedyncze nazwy zmiennych i funkcji).

W jednej linii piszemy maksymalnie 100 znaków (oprócz czytelności na ekranie ma to znaczenie jeżeli chcemy później wydrukować listing programu). Innym często spotykanym limitem jest 80 znaków.

Wskaźniki piszemy przy nazwie typu, a nie nazwie zmiennej (spację stawiamy po znaczku "*"):

int* utworz_tablice(int rozmiar_tablicy);

Na początku nauki programowania, w pętlach for stosujemy zawsze nawiasy klamrowe, nawet jeśli zapętlona jest jedna instrukcja:

for (i = 0; i < LICZBA_PROBEK; ++i) {
   printf("%f\n", sygnal[i]);
}

Wybieramy jeden z poniższych sposobów stawiania nawiasów klamrowych i konsekwentnie się go trzymamy:

while (a < 10) {
   (..)
}

while (a < 10)
{
   (..)
}

Po otwierającym i przed zamykającym nawiasem klamrowym stawiamy enter.

Poprawnie:

for (i = 0; i < 10; ++i) {
   tab[i] = i;
}

Niepoprawnie:

for (i=0; i<10; ++i)
{tab[i] = i;}

Stosujemy dodatkowe spacje oddzielające znaki + - = < > , % itd. czyli:

int tablica[] = {8, 2, 9, 3, 1, 30, 34};
scanf("%d,%d,%d", &a, &b, &c);
a = c + d++;

zamiast:

int tablica[]={8,2,9,3,1,30,34};
scanf("%d,%d,%d",&a,&b,&c);
a=c+d++;