Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2007
    Messaggi
    20

    [C] funzione su stringa

    Ho una funzione a cui devo passare una stringa di caratteri

    nome ( )
    {
    opera sulla stringa
    .............

    ritorna la stringa----
    }


    Che deve fare delle operazioni e ritornarmi un valore di una stringa

    come mi consigliate di fare?

    Come passo il valore dela stringa?

    Come faccio a ritornare il valore? Devo usare un puntatore?

    Scusate la domanda, ma sono all'inizio :master:

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    La stringa la passi tramite un puntatore ... non ho capito la questione della stringa restituita ... e' la stessa passata o un'altra?

    Fai un esempio pratico ...

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2007
    Messaggi
    20
    Due casi:

    Primo:

    devo passare una stringa e faendo una query SQL usando la stringa nome ottengo un intero.
    Come faccio a passare la stringa?

    char nome[300];

    int query (char nome......)
    {
    faccio la query

    return int;
    }

    Secondo:

    char nome[300]; oppure char *nome

    void query (char nome....)
    {
    faccio la query

    modifico nome

    }

    ora il nome è lo stesso modificato dalla funzione.


    Come mi consigliate di passare i parametri per fare meno casino possibile?

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Sempre per puntatore

    int query(char *szNome)

    void query(char *szNome)

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2007
    Messaggi
    20
    e quand chiamo la funzione?

    query (&*§°----)?

    Grazie mille

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    query(nome)

    ... ti ricordo che in C il nome di un vettore e' il puntatore al suo primo elemento ...

  7. #7
    Utente di HTML.it
    Registrato dal
    Mar 2007
    Messaggi
    20
    HO visto in qualche funzione
    query(&(*nome))

    Questo ch significa?!?

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Non significa altro che

    query(nome)

    in quanto l'operatore & e l'operatore * si annullano a vicenda ...

  9. #9
    Utente di HTML.it
    Registrato dal
    Mar 2007
    Messaggi
    20
    Codice PHP:
    #include <stdio.h>

    #include <string.h>

    void get_name(char *name,char path[3000])
    {
        
    char temp[1000];
        
    char carattere;
        
    char *p;
        
    int lunghezzaij=0;

        
    strcpy(temppath);
        
    printf("temp: %s\n"temp);
        
    lunghezza strlen(temp);    
        
    printf("lunghezza :%i\n"lunghezza);
        for (
    i=0lunghezzai++)
        {
            
    carattere temp[i];
            if (
    carattere=='/')
            {    
                
    j++;
            }
        }
        
    printf("numero di /: %i\n",j);

        
    strtok(temp,"/");    
        
    printf("p: %s\n",p);
        
    printf("temp: %s\n"temp); 
         
        for (
    i=0i<ji++)
        {
            
    strcpy(tempp);
            
    strtok(NULL"/");
            
    printf("%s\n"temp); 
        }
        
    j=0;
        
    /****************************
    * qui devo mettere temp in name
    *********************/

        
    strcpy(name,temp);


        
    printf("nome file dentro: %s\n"name);
    }

    /********************
    * MAIN
    ********************/
    main()
    {
        
    char *name=NULL;
        
        
    get_name(name,"/home/prova/ciao.png");
        
    printf("nome file fuori: %s\n"name);
             

    Ho spezzato il nome del file tramite / e arrivo ad avere in temp il nome del file dal percorso.

    come faccio a metterlo in name?

    la variabile stringa che ho nel main?
    la strcpy mi da segmentation fault.

  10. #10
    Utente di HTML.it
    Registrato dal
    Mar 2007
    Messaggi
    20
    codice:
    $ gcc -o prova_stringa prova_stringa.c 
    $ ./prova_stringa 
    temp: /home/prova/ciao.png
    lunghezza :20
    numero di /: 3
    p: home
    temp: /home
    home
    prova
    ciao.png
    Segmentation fault
    Questo è l'output

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.