Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.08.2014, 10:51   #1
marenko.lilia
Пользователь
 
Аватар для marenko.lilia
 
Регистрация: 25.12.2013
Сообщений: 91
По умолчанию выделить память под строку и записать в нее данные

раньше, при использовании MVS 2010 не возникало проблем с такой записью
Код:
	char* pStr1 = new char[strlen("строка 1 ") + 1];
	strcpy(pStr1, "строка 1 ");
	
	char* pStr2 = new char[strlen("строка 2 ") + 1];
	strcpy(pStr2, "строка 2 ");
все компилировалось нормально.

Т.е. создавался указатель, выделялась область памяти под строку и эта строка копировалась в выделенную память.

Сейчас я использую MVS 2013. В ней конечно предлагают вместо strcpy применять более безопасную strcpy_s. Но она не принимает такие параметры. Выдает ошибку " 2 IntelliSense: отсутствуют экземпляры перегруженная функция "strcpy_s", соответствующие списку аргументов
типы аргументов: (char *, const char [21])"

Так как же быть. Как скопировать строку в выделенную память в MVS 2013? Как это обойти?
marenko.lilia вне форума Ответить с цитированием
Старый 22.08.2014, 11:17   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
int n=strlen("строка 1 ") + 1;
char* pStr1 = new char[n];
	strcpy_s(pStr1,n, "строка 1 ");
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 22.08.2014, 11:25   #3
marenko.lilia
Пользователь
 
Аватар для marenko.lilia
 
Регистрация: 25.12.2013
Сообщений: 91
По умолчанию

Супер Модератору Белику Виталию - СПАСИБО!
marenko.lilia вне форума Ответить с цитированием
Старый 22.08.2014, 11:31   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Это MSDN скажи спасибо )
Это в нем описана эта нямка.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Выделить память под динамический массив указателей vik24rus Общие вопросы C/C++ 5 15.04.2013 13:19
как выделить память под TBitmap Volkogriz Общие вопросы Delphi 8 03.02.2013 20:57
Выделить память под структуру. ХреновыйПрогер Общие вопросы C/C++ 9 26.12.2010 19:00
динамически выделить память под верхний треугольник квадратной матрицы juventine Общие вопросы C/C++ 2 12.04.2009 13:06
как выделить память для указателя (pointer), и сюда же, записать : integer, потом через 4 байта, boolean? bigxman Общие вопросы Delphi 1 02.02.2009 21:17