Форум программистов, компьютерный форум CyberForum.ru

Копирование строк - error C4996: 'strcpy': This function or variable may be unsafe - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 43, средняя оценка - 4.95
_Raven_
 Аватар для _Raven_
2 / 2 / 0
Регистрация: 08.02.2013
Сообщений: 79
27.05.2014, 12:48     Копирование строк - error C4996: 'strcpy': This function or variable may be unsafe #1
Всем привет!

C++ (Qt)
1
2
3
4
5
char *p;
    char q[20];
        cin >> q;
    p = new char[strlen(q)];
    strcpy(p, q);
и тута VS мне говорит что error C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
Помогите!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ilot
Модератор
Эксперт С++
1767 / 1142 / 223
Регистрация: 16.05.2013
Сообщений: 3,020
Записей в блоге: 5
Завершенные тесты: 1
27.05.2014, 12:53     Копирование строк - error C4996: 'strcpy': This function or variable may be unsafe #2
А говорит вам компилятор следующее:
Эта функция или переменная может быть небезопасной. Попробуйте вместо этого использовать strcpy_s. Чтобы отключить предупреждение, используйте _CRT_SECURE_NO_WARNINGS. См. интерактивную справку.
zer0mail
2188 / 1871 / 187
Регистрация: 03.07.2012
Сообщений: 6,661
Записей в блоге: 1
27.05.2014, 12:54     Копирование строк - error C4996: 'strcpy': This function or variable may be unsafe #3
Для начала попробуй так:
C++
1
p = new char[strlen(q)+1];
чтобы была память под терминальный символ.
_Raven_
 Аватар для _Raven_
2 / 2 / 0
Регистрация: 08.02.2013
Сообщений: 79
27.05.2014, 12:56  [ТС]     Копирование строк - error C4996: 'strcpy': This function or variable may be unsafe #4
так тоже самое говорит
KOPOJI
Модератор
 Аватар для KOPOJI
16242 / 6453 / 390
Регистрация: 12.06.2012
Сообщений: 19,355
27.05.2014, 12:57     Копирование строк - error C4996: 'strcpy': This function or variable may be unsafe #5
Выдает ошибку: error C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead
Ilot
Модератор
Эксперт С++
1767 / 1142 / 223
Регистрация: 16.05.2013
Сообщений: 3,020
Записей в блоге: 5
Завершенные тесты: 1
27.05.2014, 12:59     Копирование строк - error C4996: 'strcpy': This function or variable may be unsafe #6
Цитата Сообщение от zer0mail Посмотреть сообщение
Для начала попробуй так:
Не зачем. В q входит нулевой символ.
_Raven_, если уж вам слова компилятора не о чем не говорят то больше сказать не чего.
_Raven_
 Аватар для _Raven_
2 / 2 / 0
Регистрация: 08.02.2013
Сообщений: 79
27.05.2014, 13:08  [ТС]     Копирование строк - error C4996: 'strcpy': This function or variable may be unsafe #7
C++ (Qt)
1
2
3
4
5
    char *p;
    char q[20];
    cin >> q;
    p = new char[strlen(q) + 1];
    strcpy_s(p, strlen(q) + 1, q);
так работает
zer0mail
2188 / 1871 / 187
Регистрация: 03.07.2012
Сообщений: 6,661
Записей в блоге: 1
01.06.2014, 22:09     Копирование строк - error C4996: 'strcpy': This function or variable may be unsafe #8
Цитата Сообщение от Ilot Посмотреть сообщение
Не зачем. В q входит нулевой символ.
В q входит, но он не входит в strlen
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.06.2014, 13:10     Копирование строк - error C4996: 'strcpy': This function or variable may be unsafe
Еще ссылки по теме:

C++ Error C4996: 'strcpy': This function or variable may be unsafe
C++ Ошибка при работе с файлами: C4996: 'fopen': This function or variable may be unsafe
C++ Ошибка: 'strcpy': This function or variable may be unsafe

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ilot
02.06.2014, 13:10     Копирование строк - error C4996: 'strcpy': This function or variable may be unsafe
  #9

Не по теме:

Да точно туплю. Мне почему-то подумалось, что будет выделяться память для 20 чаров, а не по факту...

Yandex
Объявления
02.06.2014, 13:10     Копирование строк - error C4996: 'strcpy': This function or variable may be unsafe
Ответ Создать тему
Опции темы

Текущее время: 15:22. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru