0 / 0 / 0
Регистрация: 08.01.2015
Сообщений: 31
1

Strcpy identifier not found

16.11.2016, 00:02. Показов 1925. Ответов 14
Метки нет (Все метки)

Не компилируеться, подчеркивает strcpy в чем может быть ошибка?

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
void printHrad(struct hrady hrad) {
        printf("Hrad name: %s\n", hrad.Name);
        printf("Hrad age: %d\n", hrad.Age);
        printf("Hrad Location: %s\n"), hrad.Location;
    }
 
    struct hrady {
        char Name[20];
        char Location[20];
        int Age;
        int rowId;
    } hrad1, hrad2;
 
    int main()
    {
        
        strcpy(hrad1.Name, "Pernstejn");
        hrad1.Age = 1082;
        hrad1.rowId = 1;
        strcpy(hrad1.Location, "Brno-okres");
        printHrad(hrad1);
        
        getchar();
 
        return 0;
    }
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.11.2016, 00:02
Ответы с готовыми решениями:

Error C2065: 'strcpy' : undeclared identifier
class String { protected: char *PointerToString; // Указатель на строку int StringSize; //...

Identifier not found
Объясните пожалуйста почему компилятор выдаёт эту ошибку,и как лучше избегать таких моментов? ...

Ошибка identifier not found
Пытаюсь создать функцию по сортировке, ну и ее выполнение соответственно. Цель - разобраться с...

Identifier not found при вызове функции
Здравствуйте. В моем консольном приложении помимо функции int _tmain, есть функция ...

14
14 / 14 / 16
Регистрация: 26.01.2015
Сообщений: 213
16.11.2016, 00:08 2
starling, попробуй strcpy_s использовать вместо strcpy
0
Форумчанин
Эксперт CЭксперт С++
8191 / 5041 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
16.11.2016, 00:13 3
Все хедеры подключены?
C++
1
#include <cstring>
?
Если пользуетесь студией, попробуйте добавить после хедеров
C++
1
#define _CRT_SECURE_NO_WARNINGS
Цитата Сообщение от Ofelion Посмотреть сообщение
starling, попробуй strcpy_s использовать вместо strcpy
Вредный совет. Сменить стандартную функцию на проприетарную и сделать код непереносимым на ровном месте.
1
14 / 14 / 16
Регистрация: 26.01.2015
Сообщений: 213
16.11.2016, 00:19 4
MrGluck, про define не знал..слышал,что использование strcpy небезопасно
0
0 / 0 / 0
Регистрация: 08.01.2015
Сообщений: 31
16.11.2016, 16:39  [ТС] 5
Не помогает ничего( Это единственный способ использования для ввода char?
0
nd2
3431 / 2810 / 1249
Регистрация: 29.01.2016
Сообщений: 9,426
16.11.2016, 17:13 6
Цитата Сообщение от starling Посмотреть сообщение
Не помогает ничего
Что не помогает?
0
0 / 0 / 0
Регистрация: 08.01.2015
Сообщений: 31
16.11.2016, 21:40  [ТС] 7
добавление библиотеки, и тот define что выше? вернее библиотека убрала одну ошибку хотя код вроде как чистый)
Миниатюры
Strcpy identifier not found  
0
Вездепух
Эксперт CЭксперт С++
10315 / 5605 / 1530
Регистрация: 18.10.2014
Сообщений: 13,694
16.11.2016, 22:06 8
Лучший ответ Сообщение было отмечено starling как решение

Решение

Цитата Сообщение от MrGluck Посмотреть сообщение
C++
1
#include <cstring>
?
Если пользуетесь студией, попробуйте добавить после хедеров
C++
1
#define _CRT_SECURE_NO_WARNINGS
"После хедеров"? Ключевой момент тут в том, что #define _CRT_SECURE_NO_WARNINGS надо делать именно до (!) включения заголовочных файлов.

Добавлено через 1 минуту
Цитата Сообщение от starling Посмотреть сообщение
добавление библиотеки, и тот define что выше?
#define сделайте именно до #include <cstring>. А лучше - прямо в установках проекта.
2
Форумчанин
Эксперт CЭксперт С++
8191 / 5041 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
16.11.2016, 22:17 9
Цитата Сообщение от TheCalligrapher Посмотреть сообщение
надо делать именно до (!) включения заголовочных файлов.
Да, я был не прав. Привык добавлять в настройках проекта.
0
gray_fox
16.11.2016, 22:22
  #10

Не по теме:

Цитата Сообщение от MrGluck Посмотреть сообщение
Вредный совет. Сменить стандартную функцию на проприетарную и сделать код непереносимым на ровном месте.
Однако в С11 подобные "safe" варианты таки добавили.

0
nd2
3431 / 2810 / 1249
Регистрация: 29.01.2016
Сообщений: 9,426
16.11.2016, 22:41 11
Цитата Сообщение от gray_fox Посмотреть сообщение
Однако в С11 подобные "safe" варианты таки добавили.
Разве?
0
What a waste!
1607 / 1299 / 180
Регистрация: 21.04.2012
Сообщений: 2,727
16.11.2016, 22:45 12
Цитата Сообщение от nd2 Посмотреть сообщение
Разве?
Тут есть описание например: http://en.cppreference.com/w/c/string/byte/strcpy .
1
Форумчанин
Эксперт CЭксперт С++
8191 / 5041 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
16.11.2016, 22:48 13
Цитата Сообщение от nd2 Посмотреть сообщение
Разве?
Стандарта С11 под рукой нет, но судя по
http://en.cppreference.com/w/c/string/byte/strcpy
таки добавили.

Добавлено через 13 секунд

Не по теме:

опоздал

0
nd2
3431 / 2810 / 1249
Регистрация: 29.01.2016
Сообщений: 9,426
16.11.2016, 22:57 14
Цитата Сообщение от gray_fox Посмотреть сообщение
Тут есть описание
Там то есть, в стандарте не нахожу.

Добавлено через 2 минуты
Или имеется ввиду Cи-стандарт? Тогда понятно, почему не нахожу...
0
What a waste!
1607 / 1299 / 180
Регистрация: 21.04.2012
Сообщений: 2,727
16.11.2016, 23:02 15

Не по теме:

Цитата Сообщение от nd2 Посмотреть сообщение
Разве?
Там, кстати,по сравнению с VC++, надо делать всё наоборот: определять константу до включения заголовочного файла что бы функция была доступна. + это опциональная фича стандарта, т.е. надо ещё проверить, что эта функция есть в реализации стандартной библиотеки.



Добавлено через 32 секунды
Цитата Сообщение от nd2 Посмотреть сообщение
Или имеется ввиду Cи-стандарт?
Да, С11 - стандарт языка С.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.11.2016, 23:02
Помогаю со студенческими работами здесь

Error C3861: 'stof': identifier not found
#include &quot;stdafx.h&quot; #include &lt;cstdlib&gt; float param; float StringToFloat(const char *str) {...

Ошибка C3861 'time': identifier not found
Здравствуйте! Я учусь программировать на C++, пользуюсь Visual Studio 2013. Столкнулся с проблемой:...

Ошибка в коде ('sqrt': identifier not found)
Компилятор VS 2005 выдает ошибку: error C3861: 'sqrt': identifier not found вот сам код...

Error C3861: 'convert_close': identifier not found //ошибка
Ребята вы пожалуйста не обращайте внимание на код, обратите только внимание на на одну ошибку. ...


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru