Salut,
tout est dans le titre, j'ai un code en C, où l'un des fichiers contient ceci:
Comment pourrais je la récupérer?Citation:
This implementation assumes that you have the ANSI-standard library routine tmpfile().
merci d'avance
Version imprimable
Salut,
tout est dans le titre, j'ai un code en C, où l'un des fichiers contient ceci:
Comment pourrais je la récupérer?Citation:
This implementation assumes that you have the ANSI-standard library routine tmpfile().
merci d'avance
Bonjour,
Il semble que ça puisse se traduire par : " L'implémentation considère que vous possédez la fonction "tmpfile()" contenue dans la bibliothèque-standard.
En gros, il te prévient qu'il va utiliser une fonction "externe", mais que celle-ci est normalement implémentée dans la bibliothèque de base, que tu dois déjà intégrer.
Merci,
en fait j'ai une erreur d'exécution quelques part lors d'un appel à tmpfile().
J'ai pensé au début que ça pourrait être un problème d'inclusion, mais à priori c'est faux, puisque la compilation est bonne.
J'ai trouvé que la fonction est déjà définie dans stdio.h, mais je n'arrive pas à trouver son code pour pouvoir cerner mon problème :/
Apparemment cette fonction échoue dans deux cas:
Citation:
1- {FOPEN_MAX} streams are currently open in the calling process.
2- Insufficient storage space is available
Bonjour,
Ça ne serait pas des fichiers qui sont ouverts et pas refermés par hasard ?
En effet, tmpfile() ouvre un fichier en w+b : si vous ne faites pas un fclose et que vous êtes dans une boucle ...
Cette erreur va inévitablement apparaître à l'itération qui va tenter de créer un fichier de plus que le résultat de(dans l'hypothèse où vous travailler sur système UN*X-Like) ou tout autre saturation d'un espace d'adressage.Code:ulimit -n
@+
Commence pas regarder errno juste après le retour de tmpfile().