//...
scanf("%1s", ins[i]);
move(app, pp[i]+pos, ins[i], 2);
//...
void move(FILE *file, int pozycja, char* znaki, int tab)
{
int r;
char buf, buf2;
char *mem;
char znak=' ';
// badamy wielkość pliku
fseek (file, 0, SEEK_END); // non-portable
int size=ftell (file); // size = wielkość pliku
//alokujemy pamięć na plik, z pominięciem początku bo tego nie ruszamy
int rozmiar = size - pozycja;
mem = (char*)malloc(sizeof(char)*rozmiar);
//ładujemy do pamięci wszystko od pozycja do końca
fseek(file,pozycja, SEEK_SET);
for(r=0; r<rozmiar; r++)
mem[r] = fgetc(file);
//przewijamy na pozycję i dopisujemy nowe znaki
for(r=0; r<=sizeof(znaki); r++)
{
fseek(file, pozycja+r, SEEK_SET);
fputc(znaki[r],file);
}
for(r=0; r<tab; r++)
fputc('\t', file);
//jesteśmy na pozycji po ostatnim dopisanym znaku więc doklejamy resztę pliku (wcześniej wczytaną)
for(r=0; r<rozmiar; r++)
fputc(mem[r],file);
free(mem);
}
mam sobie fragment programu wykorzystujący powyższa funckję i chce żeby i sczytywał pojedynczy znak, a oprócz niego dostaje dziwne robaczki. funkcję wykorzystuję juz wczesniej więc nie wiem czy problem nie moglby powstac z tego wlasnie powodu
Pomocy!
dodanie znacznika <code class="c"> - fp