Strcat

di il
3 risposte

Strcat

Stavo facendo una prova con questa funzione (correttamente funzionate in un altro programma) quando mi è successo che questo mini-codice mi manda il crash in sistema o.O vi prego, ditemi dov'è il problema perchè io non lo vedo, è identico a quello che ho fatto nell'altro programma u.U

#include <stdio.h>
#include <string.h>
main ()
{
char *a,*b;
a="palla";
b="volo";
strcat(a,b);
printf("%s",a);

getch();
}

3 Risposte

  • Re: Strcat

    Sono curioso di vedere il programma che dici sia identico e funziona!
    Come pensi di variare un'allocazione di "palla" definita constante?

    ~Max~
  • Re: Strcat

    Cioè così dovrebbe andare:

    #include <stdio.h>
    #include <string.h>
    main ()
    {
    char *a,*b,*c;
    a="palla";
    b="volo";
    strcpy(c,a);
    strcat(c,b);

    printf("%s",c);

    getch();
    }
    ma non va quindi deve esserci qualche altro errore XD
  • Re: Strcat

    Scusa, ma come pensi di assegnare c? Hai semplicemente definito il puntamento ma non l'area di memoria puntata.
    
    #include <stdio.h>
    #include <string.h>
    
    int main ()
    {
      char spazio_da_allocare_staticamente[64];
      char *a,*b,*c;
    
      c=&spazio_da_allocare_staticamente[0];
      a="palla";
      b="volo";
    
      strcpy (c,a);
      strcat (c,b);
    
      printf ("%s\n",c);
    
      getch();
      
      return 0;
    }
    
Devi accedere o registrarti per scrivere nel forum
3 risposte