Dois-je déclarer système d'appel des fonctions en C?

J'ai lu cette réponse:
Doit déclarer prototype de fonction en C?

Ma question est plus précise:

Dans un programme qui utilise le système des appels de ce genre access(), open(), creat(), write(), read()... dois-je déclarer chaque fonction de l'appel système? Est-ce que les C fonctionne? Parce que je suis le suivant:

hw1.c: In function main’:
hw1.c:50:9: warning: implicit declaration of function access [-Wimplicit-function-declaration]
hw1.c:131:9: warning: implicit declaration of function lseek [-Wimplicit-function-declaration]
hw1.c: In function writeFile’:
hw1.c:159:17: warning: implicit declaration of function write [-Wimplicit-function-declaration]

Fondamentalement, il semble que C est en colère à chaque fonction de l'appel système que j'utilise.
Je suis un peu novice en C et que cela semble étrange pour moi, même si je sais que je dois déclarer des fonctions j'écris je pense que C connaissent le système de l'appel des fonctions et n'aurait pas besoin de moi pour déclarer explicitement dans le code.

Dois-je faire quelque chose comme ceci:

int access(const char *pathname, int mode);

Si oui, pourquoi cela fait-il sens? Je utiliser d'autres langues et ne jamais avoir à le faire.

OriginalL'auteur wolfdawn | 2012-11-15