Je suis nouveau dans la programmation en C donc je suis curieux de connaître la notion d'allocation de mémoire.L'écriture sur la sortie standard alloue-t-elle de la mémoire?
L'écriture sur la sortie standard alloue-t-elle de la mémoire?
Par exemple:
write(fd, 'X', 1); //where fd is a specific file descriptor (not 1, 2 or 0)
Dans ce cas, ce code ajoute un caractère « X » dans le correspondant du fichier à fd, si la mémoire est allouée dans le fichier spécifique. Mais ici:
write(1, 'X', 1);
est-mémoire allouée? Si oui où? Si non, pourquoi et comment 'X' est-il affiché dans la sortie standard?
Ceci est complètement défini par l'implémentation. Pourquoi demandes-tu? –
Vous pouvez vérifier sur votre système particulier, et si vous utilisez Linux ou OS X, vous pouvez le faire rapidement et facilement avec valgrind. –
C'est nouveau pour moi, je suis juste curieux de savoir comment ça marche. –