Hi,
Meine Freundin arbeitet gerade an folgender Aufgabe und kommt nicht weiter - ich kann ihr leider auch nicht helfen da ich keine Erfahrung mit C habe:
Link zur Aufgabenstellung (PDF)
Es handelt sich um Aufgabe 4.
Das Problem ist, dass die Wertzuweisung nicht klappt. Gut möglich das noch mehr nicht stimmt - aber das ist wo die erste Fehlermeldung auftritt.
Wäre echt nett wenn da mal jemand drüber schauen könnte
Meine Freundin arbeitet gerade an folgender Aufgabe und kommt nicht weiter - ich kann ihr leider auch nicht helfen da ich keine Erfahrung mit C habe:
Link zur Aufgabenstellung (PDF)
Es handelt sich um Aufgabe 4.
Code:
#include <stdio.h>
#include <stdlib.h>
#include <assert.h>
/* AUFGABE 1: structs */
struct messobjekt{
int objektnr;
char* bezeichnung;
};
typedef struct messobjekt Messobjekt;
struct messwert{
Messobjekt* objekt; /* AUFGABE 3 */
int messnr;
double messwert;
};
typedef struct messwert Messwert;
int main(){
/* AUFGABE 3 */
auto Messwert *userMesswert;
int size=3;
int obnr=0;
int counter=0;
int i=0;
int objnr = 0;
char bezeichnung[50];
int messnr = 0;
float messwert = 0;
userMesswert=(Messwert*)calloc(size,sizeof(Messwert));
FILE *fp = NULL;
fp = fopen("messungen.txt", "r");
fseek(fp, 52, SEEK_CUR);
printf("Objektnummer: ");
scanf("%i", &obnr);
fflush(stdin);
while(!feof(fp)) {
fscanf(fp,"%i,%[A-Za-z]s,%i,lf\n", &objnr, bezeichnung, &messnr, &messwert);
if (objnr==obnr) {
if(size==counter){
size = size*2;
userMesswert=(Messwert*)realloc(userMesswert,size);
}
userMesswert[i].objekt->objektnr = objnr; //PROBLEM TRITT HIER AUF
userMesswert[i].objekt->bezeichnung = bezeichnung;
userMesswert[i].messnr = messnr;
userMesswert[i].messwert = messwert;
counter++;
i++;
}
}
return 0;
}
Das Problem ist, dass die Wertzuweisung nicht klappt. Gut möglich das noch mehr nicht stimmt - aber das ist wo die erste Fehlermeldung auftritt.
Wäre echt nett wenn da mal jemand drüber schauen könnte