Augmenter la taille d'un tableau en C

Résolu
joannas Messages postés 16 Date d'inscription   Statut Membre Dernière intervention   -  
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   -
Bonjour,
Je voulais savoir comment augmenter la taille d'un tableau en C si on avait deja reserver de l'espaces memoirre ave la fonction malloc;
A voir également:

3 réponses

joannas Messages postés 16 Date d'inscription   Statut Membre Dernière intervention   1
 
merci
1
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 570
 
Salut,

Avec realloc
0
joannas Messages postés 16 Date d'inscription   Statut Membre Dernière intervention   1
 
Comment on utilise realloc donne moi un exemple stp
0
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 570
 
Re,
lami20j@debian:~/trash$ cat ccm37_realloc.c
#include<stdio.h>
#include<stdlib.h>
#include<string.h>

int main()
{
        char *message,s[255];

        printf("Chaine? ");
        fgets(s,255,stdin);
        message=realloc(NULL,strlen(s)+1);
        strcpy(message,s);
        printf("%s",message);

        printf("Chaine? ");
        fgets(s,255,stdin);
        message=realloc(message,(strlen(message)+strlen(s)+1));
        strcat(message,s);
        printf("%s",message);
        return 0;
}
lami20j@debian:~/trash$ gcc ccm37_realloc.c
lami20j@debian:~/trash$ ./a.out
Chaine? Je suis en train
Je suis en train
Chaine? de te montrer realloc
Je suis en train
de te montrer realloc
lami20j@debian:~/trash$
0
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
Salut,

s/return 0;/free(message);\n/return 0;/

;)
Cdlt
0
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 570 > fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention  
 
Salut,

Oui, tu as raison ;-))
J'ai encore oublié. Je ferai plus d'attention la prochaine fois, c'est promis ;-)

Pour la regex en revanche tu pouvais écrire ;-)
s/(?=return 0;)/free(message);\n/
--
106485010510997108
0