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

Usunięta treść Dodana treść
→‎Ezoteryka C: W języku C nie jest możliwe przekazywanie typu jako argumentu.
Linia 387:
*<tt>int main(int argc, char **argv);</tt> <ref>Czasami można się spotkać z prototypem <tt>int main(int argc, char **argv, char **env);</tt>, który jest definiowany w standardzie POSIX, ale wykracza już poza standard C.</ref>
 
Argument '''<tt>argc</tt>''' jest liczbą nieujemną określającą, ile ciągów znaków przechowywanych jest w tablicy '''<tt>argv</tt>'''. Wyrażenie <tt>argv[argc]</tt> ma zawsze wartość NULL. Pierwszym elementem tablicy <tt>argv</tt>, czyli argv[0] (o ile istnieje<ref>Inne standardy mogą wymuszać istnienie tego elementu, jednak jeśli chodzi o standard języka C to nic nie stoi na przeszkodzie, aby argument argc miał wartość zero.</ref>) jest nazwa programu<ref>[http://stackoverflow.com/questions/2050961/is-argv0-name-of-executable-an-accepted-standard-or-just-a-common-conventi Stackoverflow : Is “argv[0] = name-of-executable” an accepted standard or just a common convention?
]</ref> czy komenda, którą program został uruchomiony. Pozostałe przechowują argumenty podane przy uruchamianiu programu.
 
Zazwyczaj jeśli program uruchomimy poleceniem: