int func(x)
int x;
{
.............
Jak nazywa się ten rodzaj deklaracji?Deklaracja parametrów funkcji po nazwie funkcji
Kiedy jest ważny/nieważny, w tym C lub C++, niektóre standardowe wersje i kompilatory?
int func(x)
int x;
{
.............
Jak nazywa się ten rodzaj deklaracji?Deklaracja parametrów funkcji po nazwie funkcji
Kiedy jest ważny/nieważny, w tym C lub C++, niektóre standardowe wersje i kompilatory?
Jest nadal ważny, ale ma pre-ANSI. To właśnie w tym miejscu pojawił się styl indeksu K & R. Wspornik otwarcie jest na linii po bloku, bo to wygląda dziwnie:
int func(x)
int x; {
...
}
W każdym razie, ten styl nie jest zalecane z powodu a problem with function prototypes.
K & Styl R i myślę, że nadal jest ważny, choć zniechęcony. Prawdopodobnie pochodzi on z Fortranu (gdzie parametry funkcji są zdefiniowane w korpusie funkcji nadal w ostatnim F95)
To stary styl C. Rzadko jest już widziany.
To jest składnia deklaracji parametrów R R K &, która jest ważna w ANSI C, ale nie w C++.
To prototyp funkcji. Jeśli nie zrobiłbyś tego w ten sposób, musiałbyś napisać funkcję całkowicie przed głównym, inaczej kompilator nie wiedziałby, jaka jest funkcja, kiedy używałeś jej w main. Nie jest to opisowe, więc nie jest już używane. Będziesz chciał użyć czegoś takiego:
int someFunction(int someParamX int someParamY);
Przykład podany w pytaniu to właściwie funkcja * definicja *, zauważ brak średnika po 'int func (x)'. –
Nic nie powstrzymuje definicji funkcji od posiadania prototypu. Ale pokazana definicja funkcji nie ma prototypu. Więc -1 także ja –
+1 Ważne, ale rzadkie i niezalecane. :) –