Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    [c] probllema thread ed assegnazione stringa

    ciao raga

    devo creare un thread che scriva a video una stringa ed un intero passati da linea di comando

    nella compilazione mi da errore sull'assegnamento val.c1 =car1

    dove sbaglio?
    codice:
    #include<stdlib.h>
    #include<stddef.h>                                               
    #include<stdio.h>
    #include<string.h>
    #include<unistd.h>
    #include<fcntl.h>
    #include<sys/types.h>                                  //LIBRERIE
    #include<sys/stat.h>
    #include<dirent.h>
    #include<pthread.h>
    #include<errno.h>
    
    pthread_t tid1;
    
    struct valori 
    { 
        int  a;
        char c1[10]; 
    };
    
    struct valori val;
     
    void *fun1(void *arg)
    {
     printf("stringa =%s\n",val.c1);
     printf("ho ricevuto in numero %d\n",val.a);
    }
    
    
    
    int main(int argc , char **argv)
    {
     int n;
     char  car1[10] ;
     n=atoi(argv[1]);
     sprintf(car1,"%s",argv[2]);
     val.a=n;
     val.c1=car1;  // qua da errore
     pthread_create(&tid1,NULL,fun1,&val);
     pthread_join(tid1,NULL);
    }

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Ti da' errore perche' le stringhe non si assegnano cosi' in C ... usa la strcpy

    strcpy(val.c1, car1);
    No MP tecnici (non rispondo nemmeno!), usa il forum.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.