Hej,
Mam za zadanie zapisać tablice randomowych floatów do pliku, nazwa pliku ma być pobrana od użytkownika, plik ma być binarny, a liczby mają być oddzielone nową linią
Niestety program sprawdzający mi to zadanie na uczelni, podaje mi taki błąd :
Błąd konwersji zawartości pliku do tablicy float[]: string size must be a multiple of element size
Wiecie o co może chodzić?
//
// main.c
// 23.11
//
// Created by Piotr Kacprzak on 27/10/2018.
// Copyright © 2018 Piotr Kacprzak. All rights reserved.
//
#include <stdio.h>
#include <string.h>
#include <time.h>
#include <stdlib.h>
int randoma(int min, int max)
{
int tmp;
if (max>=min)
max-= min;
else
{
tmp= min - max;
min= max;
max= tmp;
}
return max ? (rand() % max + min) : min;
}
int main() {
srand((float)time(NULL));
FILE *fp;
float tab[100];
int i;
float a;
float*p_tab=&tab[0];
char path[20];
printf("Podaj sciezke\n");
fgets(path,20,stdin);
strtok(path,"\n");
if((fp=fopen(path,"wb"))==NULL)
{
printf("Error");
exit(1);
}
for(i=0;i<100;i++)
{
a=(randoma(-10000,10000))/100;
*(p_tab+i)=a;
fprintf(fp,"%f\n",*(p_tab+i));
}
printf("file saved\n");
return 0;
}