Allouer la mémoire automatiquement ? [SCANF] - C++ - Programmation
Marsh Posté le 15-10-2002 à 17:31:32
en C c'est impossible.
utilise plutot fgets() de stdio.h pour lutter contre les dépacement de capacité en limitant le nombre de caractères lus.
Code :
|
fgets lit au maximum n-1 caractère sur le fichier passé en paramètre 3 (ici l'entrée standard) et stocke les caractères lus dans buffer
Marsh Posté le 15-10-2002 à 17:35:52
question bete : stdin etant un fichier, je peux faire un fseek dessus une fois que j'ai detecte la saisie d'un text pour savoir quelle taille allouer au buffer ?
Marsh Posté le 15-10-2002 à 20:12:04
aaaaaah c'est pas bête du tout
Merci bien, je vais tenter ça
Marsh Posté le 16-10-2002 à 00:53:39
HelloWorld a écrit a écrit : question bete : stdin etant un fichier, je peux faire un fseek dessus une fois que j'ai detecte la saisie d'un text pour savoir quelle taille allouer au buffer ? |
fseek ne marche pas sur les "fichiers console".
Mais je ne sais plus où je l'ai lu...
Marsh Posté le 15-10-2002 à 16:58:32
Je voudrais lire une chaine de caractère au clavier mais je ne connais pas sa longueur à l'avance.
Je voudrais donc savoir s'il existe une option de scanf (ou une autre fonction) qui permet d'allouer la quantité de mémoire nécessaire.
Merci