Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Da li je ovo bug u kompajleru ?

[es] :: C programiranje :: Da li je ovo bug u kompajleru ?

[ Pregleda: 762 | Odgovora: 3 ]

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Predrag Damnjanovic
Nis, Srbija

Član broj: 141
Poruke: 1296
195.252.80.*

Sajt: www.mycity.co.yu


Profil

icon Da li je ovo bug u kompajleru ?29.12.2003. u 18:47

Code:

    char *src = "hi\r\nworld";
    FILE *fstream = fopen ("test.txt", "w");
    fwrite (src, 1, strlen(src), fstream);
    fclose (fstream);


on ce od jednog \r da napravi 2 \r, pa ce fajl da izgleda ovako:
68 69 0D 0D 0A 77 6F 72 6C 64

Dva puta 0D.

Da li sam ja neobavesten, pa koristim pogresnu funkciju (mozda treba write() umesto fwrite() ?), ili je ovo bug u kompajleru ?
29.12.2003. u 18:47 

Dragi Tata

Član broj: 1958
Poruke: 3876
..g-c5300-4.dialup.nethere.net

Sajt: www.novetehnologije.com


Profil

icon Re: Da li je ovo bug u kompajleru ?29.12.2003. u 19:04
Nije bug.

Otvorio si fajl u text modu, au tom slučaju se \n interpretira kao \r\n. Jedino kad radiš sa binarnim modom, potrebno je da pišeš \r\n, a u tekstualnom modu je \n sasvim dovoljno, a uz to i portabilno (pod *nixom ostane \n, a pod Windows/DOS itd se "pretvori" u \r\n)
29.12.2003. u 19:04 

Predrag Damnjanovic
Nis, Srbija

Član broj: 141
Poruke: 1296
195.252.80.*

Sajt: www.mycity.co.yu


Profil

icon Re: Da li je ovo bug u kompajleru ?29.12.2003. u 19:41
Sada su mi jasni svi fenomeni u mom programu... a bilo ih je nekoliko...

funkcija za citanje fajla je tvrdila da je fajl 100 bajta, a strlen() je tvrdio da je fajl 116 bajta ...
29.12.2003. u 19:41 

blaza

Član broj: 961
Poruke: 734
*.vdial.verat.net



Profil

icon Re: Da li je ovo bug u kompajleru ?30.12.2003. u 06:11
Mala digresija.
Cest problem koji se javlja, a vezan je za datu tematiku, je, kada je arhiva (.zip, .arj, .rar) na serveru na kome se nalazi (a bogami i drugi fajlovi) pogresno okarakterisana kao TEXT file , pa prilikom download-a iste na Win platformu, dolazi do umetanja \r karaktera ispred svakog \n od strane servera, te kao rezultat, prilikom otvaranja iste dobijamo poruku "Archive is corrupted. If you downloaded it from the Internet, please retry or contact webmaster" ili sl. Postoje alati koji sluze za popravljanje ovakvih arhiva (isti se mogu napisati za 5 minuta), a neki arhiveri imaju ugradjenu podrsku za popravljanje arhiva koje su na ovaj nacin izmenjene.
If you want to argue with me, learn to google faster.
30.12.2003. u 06:11 

[es] :: C programiranje :: Da li je ovo bug u kompajleru ?

[ Pregleda: 762 | Odgovora: 3 ]

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.