Créer un descripteur de fichier
Je veux créer un descripteur de fichier dans C dont la valeur, je vais préciser dans le code.
J'ai une variable de nombre entier qui spécifie la valeur de descripteur de fichier à créer. Par exemple, j'ai peut-être besoin d'un descripteur de fichier dont la valeur est de 5 et plus tard l'associer avec le fichier nommé "de l'échantillon.dat" .
Vous devez vous connecter pour publier un commentaire.
Vous avez besoin dup2()
http://linux.die.net/man/2/dup
newfd
appartient déjà à un fichier, il est fermé! Je pense que vous feriez mieux d'utiliser quelque chose comme une carte.fd = open ("sample.dat", O_RDONLY);
ouvrir le fichierdup2 (fd, 5);
et copier le fichier descripteur defd
dans le numéro de descripteur 5maintenant vous pouvez le faire
read (5, buffer, BUFF_MAX);
ou également utiliserfd
d'accéder au même fichier. Vous devez fermer lafd
explicitement si vous n'en avez pas besoin.Comme @Arkadi dit voir
man dup2
pour plus de détails.dup
etdup2
à ne pas fermer l'ancien descripteur de fichier.