Redirection du flux vers la mémoire
Bonjour,
je voudrais savoir s'il est possible de rediriger les sorties vers une zone de mémoire ( une chaine ).
J'ai utilisé cette portion de code pour rediriger vers un fichier. Comment la modifier pour obtenir la redirection vers la mémoire ?
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| if (elems[z][0]=='>') {
/* XXX ouvre le fichier destination */
int file = open(&elems[z][1], O_WRONLY | O_CREAT | O_TRUNC, 0644);
if (file==-1) {
printf("ne peut pas créer le fichier \"%s\" (%s)\n",
&elems[z][1],strerror(errno));
exit(1);
}
/* XXX redirige la sortie standard sur file */
close(1);
dup2(file,1);
/* XXX supprime le dernier argument */
elems[z] = NULL;
} |
PS : Je ne suis pas très calé en C, soyez patient, parlez-moi avec des mots compréhensibles par un individu normal ...