Когда я использую strdup в Microsoft Visual С++, он предупреждает меня:
warning C4996: 'strdup': имя POSIX для этого элемента устарело. Вместо этого используйте ISO-совместимое имя: _strdup. Подробнее см. Интерактивную справку.
Таким образом, кажется, что _strdup является правильным.
Но когда я использую _strdup в GCC (Fedora Linux OS), компилятор показывает ошибку:
error: '_strdup не был объявлен в этой области
В GCC и Linux компилятор не показывает никаких ошибок для strdup.
Что правильно - strdup или _strdup?
Примечание: я включаю <string.h> в свой код.