Trasformare una stringa

di il
102 risposte

102 Risposte - Pagina 7

  • Re: Trasformare una stringa

    Superman non comprende che chi ha più esperienza di lui gli dà suggerimenti solo per il suo bene...
  • Re: Trasformare una stringa

    Nippolo questo è il codice completo, grazie per l' aiuto ho capito tutto.
    Ho messo i break anche dopo default per seguire il mio libro anche se non è obbligatorio.
    Ora funziona
    
    #include <stdio.h>
    #include <string.h>
    void read_string(char s[], unsigned int dim);
    void escape(char s[], char t[]);//copia la stringa t in s
    //int strlen_fatta_in_casa(char str[]);
    
    void main()//qua uso getchar e passo la stringa alla funzione
    {
    	char t[30], s[60];
    	read_string(t, 30);
    	escape(s, t);
    	printf("%s", s); 
    }
    void read_string(char s[], unsigned int dim)
    {
        int c;
        unsigned int i;
        for(i = 0; i < dim - 1 && (c = getchar()) != EOF; ++i)
        {
            s[i] = c;
    
        }
        s[i] = '\0';
    }
    void escape(char s[], char t[])
    {
        int i, j, c;
        for (i = 0, j = 0; i < strlen(t) - 1; i++)
        {
            switch (t[i]) {
            case '\t':
                s[j++] = '\\';
                s[j++] = 't';
                break;
            case '\n':
                s[j++] = '\\';
                s[j++] = 'n';
                break;
            default:
                s[j++] = t[i];
                break;
            }
        }
        s[j] = '\0';
    }
    
  • Re: Trasformare una stringa

    No che non funziona, almeno leggi i post se non vuoi studiare
  • Re: Trasformare una stringa

    Dimmi, cosa non funziona ?
  • Re: Trasformare una stringa

    Per quello che volevo funziona
  • Re: Trasformare una stringa

    Weierstrass ha scritto:


    No che non funziona, almeno leggi i post se non vuoi studiare
    voglio studiare e non voglio le tua risposta inutile
  • Re: Trasformare una stringa

    @SuperManPC guarda che qua dentro c'è gente con anni e anni di esperienza, il fatto che ti dicano che tu non abbia le basi dovrebbe incentivarti a studiare ed acquisirle, rispondere in modo arrogante è tutt'altro che produttivo.
  • Re: Trasformare una stringa

    orion99 ha scritto:


    @SuperManPC guarda che qua dentro c'è gente con anni e anni di esperienza, il fatto che ti dicano che tu non abbia le basi dovrebbe incentivarti a studiare ed acquisirle, rispondere in modo arrogante è tutt'altro che produttivo.
    L'ho fatto, gli ho ascoltati, ho cominciato dall' inizio(ciao mondo) 2 volte studiando la teoria, posso sbagliare anch' io quando scrivo codice. Adesso non rincomincio più, vado avanti.
  • Re: Trasformare una stringa

    L'ho fatto, gli ho ascoltati, ho cominciato dall' inizio(ciao mondo) 2 volte studiando la teoria, posso sbagliare anch' io quando scrivo codice. Adesso non rincomincio più, vado avanti.
    Fidati che andare avanti non avendo chiari alcuni argomenti è una cosa pessima! comunque non voglio dirti io cosa è meglio per te, fa ciò che ritieni giusto. Buona fortuna...
  • Re: Trasformare una stringa

    Quanto fa strlen(t) - 1 se t è "ciao mondo"? Quando si interrompe il for in quel caso? Hai studiato il for? Ha senso andare avanti senza aver studiato il for? Hai provato il tuo codice che autocertifichi come funzionante?
  • Re: Trasformare una stringa

    Ma se inserisci

    123

    e poi INVIO e EOF, non dovrebbe scrivere

    123\n

    ?
  • Re: Trasformare una stringa

    Magari è una questione marginale, ma detta n la dimensione di t, la massima dimensione di s è pari a 2n-1.
  • Re: Trasformare una stringa

    SuperManPC ha scritto:


    L'ho fatto, gli ho ascoltati,
    Cominciamo dall'italiano ... si scrive li ho ascoltati ...

    Ma io non sono d'accordo. Non hai ascoltato i consigli di rivedere le basi ed è inutile che tu dica il contrario.
    ho cominciato dall' inizio(ciao mondo) 2 volte studiando la teoria, posso sbagliare anch' io quando scrivo codice. Adesso non rincomincio più, vado avanti.
    Ma evidentemente non hai chiare alcune nozioni. Devi APPROFONDIRE l'uso di variabili, cicli, tipi di dati (cosa è un char, cosa una stringa, un array ...). Non devi fare UN solo esercizio, scopiazzando a destra e sinistra, ma devi CAPIRE cosa fa un determinato codice o una determinata istruzione.
    Inventa tu altri esercizi, COMPILA il codice e PROVALO. Non pensare che funzioni senza neanche averlo provato.

    Oppure vai avanti ... al prossimo programmino da 20 righe e 7 pagine di domande e risposte ...
Devi accedere o registrarti per scrivere nel forum
102 risposte