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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 43, средняя оценка - 4.95
_Raven_
2 / 2 / 0
Регистрация: 08.02.2013
Сообщений: 79
#1

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

27.05.2014, 12:48. Просмотров 7625. Ответов 8
Метки нет (Все метки)

Всем привет!

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.
Помогите!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.05.2014, 12:48
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Копирование строк - error C4996: 'strcpy': This function or variable may be unsafe (C++):

Error C4996: 'strcpy': This function or variable may be unsafe - C++
Классы: Ток-шоу, Развлекательная передача, Телеканал, СМИ (средство массовой информации), Радиостанция, Хит-парад Запросы: вывести...

Ошибка error C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead - C++
#include <iostream> #include <cstring> #include <fstream> #include<string> #include<iomanip> using namespace std; struct...

Выдает ошибку: error C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead - C++
Уважаемые форумчане! У меня не работает программа. Все написано "вроде" правильно. Выдает ошибку: error C4996: 'strcpy': This function...

Компилятор выдаёт ошибку error C4996: 'strcpy': This function or variable may be unsafe - C++
Добрый день! Помогите , пожалуйста, узнать в чём проблема. Код взят из книги. Мне он не очень нравится, были мысли что где-то есть...

Warning C4996: 'strcpy': This function or variable may be unsafe - C++
написал программу все считает , но выводит ошибку окно как сделать отладку программы? Warning 1 warning C4996: 'strcpy': This function...

Error C4996: 'gets': This function or variable may be unsafe - C++
#include "stdafx.h" #include"iostream" #include "cstdio" using namespace std; int main() { setlocale(LC_ALL,...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Ilot
Модератор
Эксперт С++
1809 / 1166 / 226
Регистрация: 16.05.2013
Сообщений: 3,070
Записей в блоге: 5
Завершенные тесты: 1
27.05.2014, 12:53 #2
А говорит вам компилятор следующее:
Эта функция или переменная может быть небезопасной. Попробуйте вместо этого использовать strcpy_s. Чтобы отключить предупреждение, используйте _CRT_SECURE_NO_WARNINGS. См. интерактивную справку.
zer0mail
2332 / 1958 / 192
Регистрация: 03.07.2012
Сообщений: 7,021
Записей в блоге: 1
27.05.2014, 12:54 #3
Для начала попробуй так:
C++
1
p = new char[strlen(q)+1];
чтобы была память под терминальный символ.
_Raven_
2 / 2 / 0
Регистрация: 08.02.2013
Сообщений: 79
27.05.2014, 12:56  [ТС] #4
так тоже самое говорит
KOPOJI
Модератор
Эксперт HTML/CSSЭксперт PHP
16695 / 6621 / 431
Регистрация: 12.06.2012
Сообщений: 19,875
Завершенные тесты: 1
27.05.2014, 12:57 #5
Выдает ошибку: error C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead
Ilot
Модератор
Эксперт С++
1809 / 1166 / 226
Регистрация: 16.05.2013
Сообщений: 3,070
Записей в блоге: 5
Завершенные тесты: 1
27.05.2014, 12:59 #6
Цитата Сообщение от zer0mail Посмотреть сообщение
Для начала попробуй так:
Не зачем. В q входит нулевой символ.
_Raven_, если уж вам слова компилятора не о чем не говорят то больше сказать не чего.
_Raven_
2 / 2 / 0
Регистрация: 08.02.2013
Сообщений: 79
27.05.2014, 13:08  [ТС] #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
2332 / 1958 / 192
Регистрация: 03.07.2012
Сообщений: 7,021
Записей в блоге: 1
01.06.2014, 22:09 #8
Цитата Сообщение от Ilot Посмотреть сообщение
Не зачем. В q входит нулевой символ.
В q входит, но он не входит в strlen
Ilot
02.06.2014, 13:10     Копирование строк - error C4996: 'strcpy': This function or variable may be unsafe
  #9

Не по теме:

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

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.06.2014, 13:10
Привет! Вот еще темы с ответами:

Ошибка 1 error C4996: 'scanf': This function or variable may be unsafe - C++
Здравствуйте , подскажите пожалуйста с задачками) есть 2 задачки по массивам с ошибкой не могу понять в чем дело !) 1. #include...

Ошибка: 'strcpy': This function or variable may be unsafe - C++
error C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use...

Ошибка при работе с файлами: C4996: 'fopen': This function or variable may be unsafe - C++
Помогите пожалуйста. писал программу, по данному заданию. вроде как все написал, но с файлами получился косяк. не могу разобраться в чем...

Ошибка "C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead" - C++
error C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
02.06.2014, 13:10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru