Bonjour à tous,
Je n'arrive pas à bien me servir des fonctions write et open. J'ai créé le tout petit programme suivant :
Je veux créer le fichier test et juste écrire 'z' dedans, mais ça ne marche pas. J'ai mis 777 comme paramètre à open, comme signalé dans le manuel pour donner tous les droits à tous le monde. Lorsque j'exécute le programme, le fichier test est bien créé mais vide. De plus, lorsque je regarde les droits du fichier, j'ai :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 #include <unistd.h> #include <fcntl.h> int main() { int fd; char c = 'z'; fd = open("./test",O_CREAT, 777); write(fd, &c, 1); return (0); }
-r----x--x 1 gautgaut 2014 0 Nov 4 17:04 test
(je suis sur mac OS). J'ai bien essayer d'utiliser l'option O_WRONLY, mais sans rigueur ni succès.
L'un de vous a-t-il une explication ? Merci d'avance,
Gautier
Partager