PDA

View Full Version : Problema del passaggio di una struttura di dati ad una funzione


Stobby
19-11-2003, 18:37
Ciao a tutti,
sto sviluppando un programma per l'università nel quale devo passare un array di tipo struttura ad una funzione, per poi acquisire dei dati.

Il dato è cosi formato:

typedef struct motore {
char tipo[11];
float cilindrata;
unisgned numerogiri;
float potenza;
}

Il programma crea due array del tipo motore da dieci elementi l'uno, ed attraverso un menu di selezione permette di scegliere la funzione da invocare per operare su di essi.

Una di queste permette l'inserimento dei dati nell'array... e qui sorge il problema:
Quando la funzione che permette l'acquisizione dei dati deve acquisire il dato cilindrata (oppure il dato potenza), il programma si impalla ed il sistema operativo mi dice:

scanf: floating point formats not linked
abnormal program termination:

Il programma è realizzato in linguaggio C, e, sinceramente, essendo la prima volta che passo dati di tipo struttura a delle funzioni, non so dove mettere le mani...

Grazie a tutti coloro che mi aiuteranno!

Ciao!

cionci
19-11-2003, 20:26
Credo che il problema sia altrove... Fammi vedere come leggi con la scanf...
Compilatore e sistema operativo ?

lovaz
19-11-2003, 20:35
array di puntatori? Passa l'indirizzo del primo elemento e sei a posto

Stobby
19-11-2003, 21:51
Grazie per le risposte... ho risolto tutto comunque!
Per esigenze didattiche utilizzo un compilatore Turbo C v1.01 della Borland..
Ed ho scoperto che il problema nasce proprio dal compilatore. Il metodo di scansione euristica del testo, che utilizza, in alcuni casi complessi può operare una riduzione dell'utilizzo della memoria per i numeri dichiarati di tipo float causando questo errore.
Cambiato compilatore, risolti i problemi.

Grazie comunque per le risposte!