Cześć,
jestem w trakcie rozwiązywania zadania "Zabawne dodawanie Piotrusia" z łatwych na polskim SPOJu. Kod tworzę w VS 2017 w C++, gdzie przy konwersji inta na chara i odwrotnie (tak, by wprowadzonego inta z klawiatury mieć potem w tablicy znak po znaku, nie chodzi mi o szukanie kodu ASCII) używałem znanych mi z C funkcji atoi oraz itoa. VS zwracał błąd odnośnie funkcji itoa, standardowy C4996:
'itoa': The POSIX name for this item is deprecated. Instead, use the ISO C and C++ conformant name: _itoa. See online help for details.
No więc mogłem ten błąd zignorować za pomocą pragma (funkcja działała wówczas bez zarzutu) lub po prostu zmienić w kodzie na _itoa. Wówczas znowu krzyknął mi, że jest to funkcja niebezpieczna i lepiej użyć _itoa_s - tak też zrobiłem, skończył krzyczeć, program się skompilował i działał jak należy. Biblioteki które zainkludowałem to <iostream> oraz <stdlib.h>.
No i niby wszystko pięknie, a jak oddaję w SPOJu zadanie za każdym razem mam błąd kompilacji, SPOJ nie rozpoznaje (a wybieram tam C++ 14 gcc 6.3) funkcji ani itoa, ani _itoa, _itoa_s - tak jakby nie znajdowała się ona w żadnej z tych dwóch bibliotek, mimo że na VS funkcja działa (znaczy musi mieć gdzieś tam swą definicję). Więc pytanie do was co z tym fantem zrobić? Czy atoi/itoa to tylko C? Bo w internecie mało na ich temat w C++, nie znalazłem też info w jakiej bibliotece się znajdują.