Open declaration implicite a la compilation

Toto -  
dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

J'ai comme qui dirait un petit problème, ayant installé hier Ubuntu sur mon ordinateur pour faire un projet de C / Système d'exploitation, j'ai installé les différents packages pour programmer : build-essentials, et les autres librairies ...

Cependant lorsque je compile le programme suivant
#include <sys/types.h>
#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>
#include <sys/stat.h>
#include "librairie.h"
#define TAILLEBUF 30

int main ()
{
int *adresse;
char *chaineretournee;

*adresse = open("file.txt",O_RDONLY);

chaineretournee = lireuneligne(adresse);
printf("%s", *chaineretournee);
close(adresse);
return 0;


}


et bien il me met les erreures suivantes :
Dans le fichier inclus à partir de main1.c:6:
librairie.h:1:34: attention : pas de retour chariot à la fin du fichier
main1.c: Dans la fonction «main» :
main1.c:14: attention : déclaration implicite de la fonction « «open» »
main1.c:14: erreur: «O_RDONLY» undeclared (first use in this function)
main1.c:14: erreur: (Each undeclared identifier is reported only once
main1.c:14: erreur: for each function it appears in.)
main1.c:17: attention : format «%s» expects type «char *», but argument 2 has type «int»
main1.c:18: attention : passing argument 1 of «close» makes integer from pointer without a cast
make: *** [main1.o] Erreur 1

Je ne comprends donc pas pourquoi il ne me trouve pas la fonction open

Si vous pouviez m'aider :)

Merci d'avance
Toto
A voir également:

1 réponse

dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   5 637
 
hello
ajouter
#include <fcntl.h>

open retouirne un int ;
int adresse;
adresse = open("file.txt",O_RDONLY);
0