Spotkałem się z dziwną sytuacją i nie za bardzo wiem jak sobie z tym poradzić.
Mam taki fragment kodu:
struct rekord temp1, temp2, bufor_we1[BUF-1], bufor_we2[BUF-1];
tasma1=fopen("tasma1.txt", "r");
tasma2=fopen("tasma2.txt", "r");
ile1 = fread(&bufor_we1,sizeof(pieciokat),BUF,tasma1);
ile2 = fread(&bufor_we2,sizeof(pieciokat),BUF,tasma2);
Wcześniej mam zdefiniowaną strukturę "rekord", składającą sie z pięciu liczb całkowitych bez znaku. "Pięciokat" jest typu rekord.
Po wczytaniu rekordow do zmiennych bufor_we1 i bufor_we2 z oddzielnych plików dzieje się dziwna rzecz: ostatni element bufora_we2 przybiera wartość pierwszego elementu bufora_we[1]. :| Wygląda to tak jakby te dwie zmienne niejako zachadziły na siebie w pamięci. Sytuacja nieco się poprawia, jeśli jeden z tych buforów zadeklaruje na zewnątrz, a drugi wewnątrz funkcji. Ale nawet wtedy, dla dużych wartości BUF, zaczyna się dziać podobnie.
Jeśli ktoś ma jakiś pomysł jak się tego pozbyć, bardzo proszę o pomoc.
Pozdr.