Kezdőoldal » Számítástechnika » Programozás » C-ben miert írja felul a txt...

C-ben miert írja felul a txt fajlt, csak az utolso kiiras marad meg?

Figyelt kérdés

void print_fused_euler_angles(mpudata_t *mpu)

{

FILE *f = fopen("file.txt", "w");

if (f == NULL)

{

printf("Error opening file!\n");

exit(1);

}



printf("\rX: %0.0f Y: %0.0f Z: %0.0f ",

mpu->fusedEuler[VEC3_X] * RAD_TO_DEGREE,

mpu->fusedEuler[VEC3_Y] * RAD_TO_DEGREE,

mpu->fusedEuler[VEC3_Z] * RAD_TO_DEGREE);


//*******kiiratas********

fprintf(f, "print : %f\n", mpu->fusedEuler[VEC3_X] * RAD_TO_DEGREE);



fflush(stdout);

//fclose(f);


}



Ebben a funcioban iratom ki egy txt-be a szenzor mért értékeit, de csak az utolso marad meg a txt ben mielot kilepek a programbol.


2016. okt. 24. 20:50
1 2
 1/12 A kérdező kommentje:
talan mar meg van.... az irasi mode "a" -nak kell lenni
2016. okt. 24. 21:00
 2/12 A kérdező kommentje:
*nem egeszen jo megoldas mert az elozo meres benne marad. hogyan kellene a txt.t mindig torolni?
2016. okt. 24. 21:15
 3/12 anonim ***** válasza:

Egy egyszerű megoldás, ha a függvényed kapja a file handlet (FILE*), és nem magának csinálja meg.


Így a függvényen kívül eldöntheted, milyen módban nyitod meg, közben ráhívhatsz akárhányszor a fprintf-re, aztán bezárod és a program következő indulásakor kezded újra.


(finomíthatod még, pl. fájlnevet megadod parancssori argumentumként, így megmaradhat az előző is, ha úgy akarod)

2016. okt. 24. 21:34
Hasznos számodra ez a válasz?
 4/12 A kérdező kommentje:

Aha :) erre gondoltamen is...csak nem talaltam peldat erre idaig, hogy hogyan adjam meg parameternek


errol a kodrol beszelek:

[link]


ezen belul a gyokerben van a imu.c

2016. okt. 24. 21:39
 5/12 anonim ***** válasza:

példa:

[link]


Nyilván mindenféle függvényt lehetne még írni, mert így egy "vector3d_t" streamre íratásának a logikája benne van egy függvényben, aminek ehhez semmi köze (print_fused_euler_angles_to_file), de ez C, lowlevel, stb.. megfér..


Kis magyarázat: az stdout is egy file pointer, szóval elég generikus az egész (pl. a printf az egy fprintf az stdoutra)

2016. okt. 24. 23:07
Hasznos számodra ez a válasz?
 6/12 A kérdező kommentje:

Koszonom a valaszod


Jol nezz ki a kod, ennek mukodnie kéne? vagy valami meg hianyzik belole?


ezt irja ki amikor futatni akarom:


[link]


[link]


[link]

2016. okt. 24. 23:49
 7/12 anonim ***** válasza:

Kicsit összekevertem c++-al. Nincs default paraméter tehát a függvény szignatúráját kell változtatni:


void print_fused_euler_angles_to_file(mpudata_t *mpu, FILE* file)

2016. okt. 25. 10:02
Hasznos számodra ez a válasz?
 8/12 anonim ***** válasza:

Nem vagyok C guru, de "w" helyett "a" nem működik? (a - append - hozzáfűzés)


[link]

2016. okt. 25. 13:25
Hasznos számodra ez a válasz?
 9/12 A kérdező kommentje:

Sajnos meg most is hibazzik.

AZ egesz kod imu.c


[link]

2016. okt. 25. 17:13
 10/12 A kérdező kommentje:

ez pedig a kep hozza


[link]

2016. okt. 25. 17:14
1 2

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!