On 12 March 2017 at 19:04, Alexandru Elisei via so <so@cursuri.cs.pub.ro> wrote:
> Primesc urmatorul warning la compilarea pe Windows:
>
> warning C4996: 'strdup': The POSIX name for this item is deprecated.
> Instead, use the ISO C++ conformant name: _strdup. See online help for
> details.
>
> Se va lua in calcul warning-ul?

Solutia mea cand am fost student anul 3 a fost sa reimplementez strdup
cu nitica joaca cu pointeri ca sa nu existe probleme de nici un fel (a
se vedea apoi argumentatia de mai jos):

Dupa cunostintele mele strdup e considerata POSIX, ergo nu prea e
ANSI-C/portabila.

Spune-mi, te rog, daca flag-ul de compilare pe windows
CRT_NONSTDC_NO_DEPRECATE iti rezolva problema acestui warning si ar
trebui sa vedem in acest caz daca va fi acceptata folosirea lui la
tema.

La temele 2,3,4 etc daca mai ai nevoie de functie mergi pe un #define
strdup _strdup sub un ifdef de Windows. E mai civilizat si mai just.


-- 
Cu stimă,
Mihai Bărbulescu
_______________________________________________
http://ocw.cs.pub.ro/courses/so/info/lista-discutii

Raspunde prin e-mail lui