Подскажите почему не компилируется данная программа? Сначала компилятор ругался на
strcpy
, потом заменил на
strncpy
, но все равно крашится. По идеи же
strncpy
вроде безопасная функция. В чем проблема и как ее пофиксить? Стоит ли использовать strcpy_s?
PS. MSVC
// #define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <cstring>
int main()
{
const int SIZE = 20;
const char name[SIZE] = "name";
char * p_name = new char[SIZE];
strncpy(p_name, name, SIZE - 1);
// snprintf(p_name, SIZE, "%s", name);
system("pause");
return 0;
}