C fájlkezelésben kérhetnék egy kis segítséget?
Kicsit hosszabb a program, nemtudom mennyire átlátható. A problémám az, h a páros/páratlan ASCII kódú elemeket kell két külön fájlba átmásolni. Amikor csak a párosokat akarom akkor meg is csinálja, viszont amikor ugyanúgy megírom a páratlanra is, akkor már nem csinálja. Lehet olyan gond, h túl sok a változó és azért hülyül meg? win alatt csinálom.
program:
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <string.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <io.h>
int main()
{
int fh;
int fh2;
int fh3;
int fg;
int a;
int b;
int d;
int i;
int j=0;
int k;
int m;
char c[20]={0};
char q[20]={0};
char w[20]={0};
char s[]="Kis Pista";
fh=open("adat1.txt",O_RDWR | O_CREAT | O_TRUNC | O_BINARY | S_IWRITE | S_IREAD);
fh2=open("adat2.txt",O_RDWR | O_CREAT | O_TRUNC | O_BINARY | S_IWRITE | S_IREAD);
fh3=open("adat3.txt",O_RDWR | O_CREAT | O_TRUNC | O_BINARY | S_IWRITE | S_IREAD);
a=write(fh,s,strlen(s));
close(fh);
fg=open("adat1.txt",O_RDWR | O_BINARY);
b=read(fg,c,20);
printf("tartalma: %s\n",c);
for(i=0;i<20;i++)
{
d=c[i];
if(d%2==0)
{
q[j]=c[i];
j++;
}
}
k=write(fh2,q,20);
j=0;
for(i=0;i<20;i++)
{
d=c[i];
if(d%2==1)
{
w[j]=c[i];
j++;
}
}
m=write(fh3,w,20);
close(fg);
return 0;
}
Túl sok változó LoL, szerinted egy oprendszer kódjában hány változó van?
Valamint a fene se fogja elemezgetni ezt a fost, abc változókkal, írd meg rendesen, úgy talán te is rájössz majd a hibára...
#include <stdio.h>
#include <stdlib.h>
int main()
{
FILE *fh;
FILE *fh1;
FILE *fh2;
int ch;
char s[]="0123456789abcdef";
fh = fopen("adat1.txt", "w+");
fh1 = fopen("adat2.txt", "w+");
fh2 = fopen("adat3.txt", "w+");
fprintf(fh,"%s", s);
printf("Tartalma: %s\n", s);
fclose(fh);
fh = fopen("adat1.txt", "r");
while((ch = getc(fh)) != EOF)
{
if (ch%2==1) putc(ch, fh2); else putc(ch, fh1);
}
fclose(fh);
fclose(fh1);
fclose(fh2);
return 0;
}
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
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!