Bonjour à tous,
le probleme est simple à comprendre, je veux écrire dans un fichier et la fonction write me retourne -1. Mais si je remplace dans la fonction open
Code : Sélectionner tout - Visualiser dans une fenêtre à part
int fd = open("coco.txt", O_CREAT|O_APPEND, 0600);
par
Code : Sélectionner tout - Visualiser dans une fenêtre à part
int fd = open("coco.txt", O_CREAT|O_WRONLY, 0600);
ca marche.

Je vous montre mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
int main(int argc, char const *argv[])
{	
	int fd = open("coco.txt", O_CREAT|O_APPEND, 0600);
	if( fd < 0)
	{
		printf("erreur avec open, fd = %i\n", fd);
	}
	else
	{
		char* str = "coucou mon petit coco\n";
		int err = write(fd, str, 22);
		printf("err = %i\n", err);
		close(fd);
	}
	return 0;
}
je bloque totalement sur le pourquoi du comment. Avez vous une idée du probleme ?

Merci d'avance