On Mar 12, 2014 9:45 AM, "Pascu Corneliu Florin" <
[email protected]> wrote:
>
> OK , am inteles nevoia de a avea un signed pentru iesire ca sa poate da
return -1 in caz de eroare .
> Ce nu intelegeam se reduce la : size_t e unsigned si apartine [0,
4294967296] si
> ssize_t e signed si apartine [-214783647, 214783647] ( am dat printf pe
sistemul meu , dar
> cred ca sunt definite asa in limits.h).
> Orice read care incearca sa citeasca intre [ 214783647 + 1, 4294967296]
> ar putea face asta din definita read-ului dar ar avea intotdeauna
comportament undefined.
> Asa este sau  ceva imi scapa :)? Mi s-a parut dubios .

Corect, este fix ce a zis și Răzvan, comportamentul pentru read este
undefined în această situație. Oricum, având în vedere că pe un sistem pe
32 de biți minim 1GB din spațiul virtual de adrese este asociat
kernel-ului, cam dificil să ajungi să vrei să faci un read de peste 2G
_______________________________________________
http://ocw.cs.pub.ro/courses/so/info/lista-discutii

Raspunde prin e-mail lui