[so] [Tema0][Win] Cateva intrebari

Alexandru Juncu alexj at rosedu.org
Sun Feb 24 00:33:12 EET 2013


2013/2/24 Surdeanu Mihai <mihai.surdeanu at yahoo.com>:
> Salut!
> Vă rog să mă scuzați pentru titlul subiectului, care este puțin cam general
> dar aș avea mai multe întrebări.

Salut!

Pare destul de ok titlul, pentru că ai folosit tag-uri :P

> 1. Am reușit zic eu să fac tema (pe Linux), însă când o portez nu pot face
> acest lucru fără a utiliza directive de preprocesare deoarece utilizez
> funcția fopen, iar Windows-ul îmi cere fopen_s. Să îl las așa cu warning,
> sau pot folosi fișiere sursă diferite pentru Linux și Windows?

Ideea temei 0 este de a nu avea 'portare'. Adică să nu modifici ceva
între platforme.Fix același cod să ruleze pe ambele platforme.
Nu este temă de System programming, pentru că se folosește de
wrapper-e peste lucruri dependente de system. De aceea se zice de
funcțiile din categoria fopen, pentru că acelea sunt independente de
system.

> 2. Nu înțeleg de ce e interzisă utilizarea directivelor de prepocesare,
> iar prin F.A.Q ni se spune că putem utiliza fopen?

Directivele de preprocesare sunt interzise din motivul de mai sus: să
fie același cod rulat (și să nu fie directive care compilează cod
diferit în funcție de platformă).

Dar nu înțeleg legătura dintre directive de preprocesare și fopen.

> 3. Până la urmă noi unde trebuie să testăm? Adică nu trebuie pe vmchecker?
> Mașina virtuala care e pusă la dispoziție este exact ca cea de pe vmchecker?
> Mulțumesc!

Ar trebui să fie aproape aceeasi mașină (s-ar putea să difere foarte
puțin din cauza scripturilor de vmchecker), dar din punct de vedere a
testelor este fix la fel.

>
> PS : "You have lines longer than 80 characters. Fix that." mi se pare iar
> o tâmpenie.

Limita de 80 de caractere este una regăsită extrem de des în coding
style ale proiectelor în C.

Spor!


More information about the so mailing list