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

    perchè de c++ mi invia la segnalazione di errore a microsoft e chiude tutto?

    cari amici,sto scrivendo un programma in csemplice semplice che con sprintf sscanf mi legge una stringa contenente un numero double,la converte nell'effettivo valore tramite sscanf
    la salva su una struttura legata ad un array di puntatori alla struttura,li invia ad una funzione che con un ciclo di sprinf sscanf spezza il doublein due interi,la parte decimale e quella non salvandoli nella struttura di prima.
    funziona tutto,il problema è che appena esce dal ciclo di separazione si impalla,mi apre la
    "Si è verificato un errore in SenzaTitolo1.exe. L'applicazione verrà chiusa."
    e mi chiude tutto.
    qualcuno sa perchè? ecco il codice

    #include<stdio.h>
    #include<string.h>
    #include<stdlib.h>
    struct dint{
    double num;
    int v[2];
    };
    void conta (struct dint **,int);
    main(){
    struct dint *vettori[10];
    int n,i,punto,d;
    char buf[40];

    printf("\n numero di d: ");
    scanf("%d",&d);


    for(i=0;i<d;i++){
    vettori[i]=(struct dint *)malloc(sizeof (struct dint));
    fflush(stdin);
    printf("\n numero: ");
    gets(buf);
    sscanf(buf,"%lf",&(vettori[i]->num));

    }
    conta(vettori,n);


    }


    void conta(struct dint **vettori,int n){
    int i;
    char buf[10];
    double appo;

    for(i=0;i<n-1;i++){

    sprintf(buf,"%f",(vettori[i]->num));
    sscanf(buf,"%d.%d",&(vettori[i]->v[0]),&(vettori[i]->v[1]));
    printf("\n sinistra:%d destra:%d",(vettori[i]->v[0]),(vettori[i]->v[1]));
    }//qua va in paranoia


    }

    aiuuto
    .follow the white rabbit.

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,288
    C'è chi scrive titoli striminziti, chi esagera.

    Ho modificato il titolo rimuovendo le parti superflue.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Utente di HTML.it L'avatar di byaur
    Registrato dal
    Aug 2004
    Messaggi
    1,061

    Re: perchè de c++ mi invia la segnalazione di errore a microsoft e chiude tutto?

    Originariamente inviato da snowboarder
    cari amici,sto scrivendo un programma in csemplice semplice che con sprintf sscanf mi legge una stringa contenente un numero double,la converte
    ....
    .....
    ....
    aiuuto
    indenta il codice per favore e utilizza il tag CODE...

    così è illeggibile...

    VVoVe: VVoVe:
    Chi di noi non vorrebbe
    sollevare il velo sotto cui sta nascosto il
    futuro...
    David Hilbert

  4. #4
    codice:
    #include<stdio.h>
    #include<string.h>
    #include<stdlib.h>
    struct dint{
                double num;
                int v[2];
                };
    void conta (struct dint **,int);
    main(){
           struct dint *vettori[10];
           int n,i,punto,d;
           char buf[40];
           
           printf("\n numero di d: ");
           scanf("%d",&d);
           
           
           for(i=0;i<d;i++){
                            vettori[i]=(struct dint *)malloc(sizeof (struct dint)); 
                            fflush(stdin);
                            printf("\n numero: ");
                            gets(buf);
                            sscanf(buf,"%lf",&(vettori[i]->num));
                            
                            }
                            conta(vettori,n);
                            
                            
           }
    
    
    void conta(struct dint **vettori,int n){
         int i;
         char buf[10];
         double appo;
         
         for(i=0;i<n-1;i++){
                          
                          sprintf(buf,"%f",(vettori[i]->num));
                          sscanf(buf,"%d.%d",&(vettori[i]->v[0]),&(vettori[i]->v[1]));
                          printf("\n sinistra:%d          destra:%d",(vettori[i]->v[0]),(vettori[i]->v[1]));
                          }//qua va in paranoia
                           
                          
         }
    .follow the white rabbit.

  5. #5
    Utente di HTML.it L'avatar di byaur
    Registrato dal
    Aug 2004
    Messaggi
    1,061
    mi sbaglio o c'è una parentesi graffa di troppo???

    VVoVe:
    Chi di noi non vorrebbe
    sollevare il velo sotto cui sta nascosto il
    futuro...
    David Hilbert

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.