3 / 3 / 1
Регистрация: 04.11.2013
Сообщений: 285
|
||||||
1 | ||||||
Ошибка при работе с функцией strlen26.11.2014, 19:34. Показов 8130. Ответов 19
Метки нет (Все метки)
Не могу понять, в чём проблема
0
|
26.11.2014, 19:34 | |
Ответы с готовыми решениями:
19
Ошибка при работе с функцией При попытке вычислить длину строки стандартной функцией strlen возникает ошибка Ошибка при работе с функцией gradient Вылетает ошибка при работе с функцией Copy |
8739 / 4317 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
|||||||||||
26.11.2014, 19:43 | 2 | ||||||||||
заменить:
0
|
3 / 3 / 1
Регистрация: 04.11.2013
Сообщений: 285
|
|
26.11.2014, 20:21 [ТС] | 3 |
hoggy, А вы можете пояснить, почему именно так? Или просто "так надо"?
исправил, всё равно ругается [Error] 'std::string' has no member named '_c_str'
0
|
8739 / 4317 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
||||||||||||||||||||||||||||||||||||
26.11.2014, 21:11 | 4 | |||||||||||||||||||||||||||||||||||
ох, сорри. Я опечатался:
Конечно. Вы и сами можете легко это узнать: 1. Берем функцию strlen, и смотрим что ей нужно: http://www.cplusplus.com/reference/cstring/strlen/
Как вы видите, функция ожидает на входе переменную типа const char * Ваша переменная 'а' чем является?
Именно это и не понравилось компилятору. Значит нужно взять стринг, и каким то образом вытащить из него const char * Смотрим, что у нас умеет string: http://www.cplusplus.com/reference/string/string/ Если вы не опытный, и по имени функции не можете сразу догадаться, что значит c_str (си-строка), тогда просто просматриваете функции-члены класса, и выискиваете среди них ту, что возвращает объект нужного типа: http://www.cplusplus.com/refer... ing/c_str/
2
|
3 / 3 / 1
Регистрация: 04.11.2013
Сообщений: 285
|
|
26.11.2014, 21:52 [ТС] | 6 |
hoggy,
Программа работает, но к сожалению не считает символы, дальше пробела, не можете подсказать, как решить? Добавлено через 30 секунд tyreu, Та же проблема, считает символы только до первого пробела
1
|
Frip
|
26.11.2014, 22:01
[ТС]
#8
|
Не по теме: Эх, почитал ваш ответ, прояснилось не многое, но это скорее моя малая образованность в данной сфере, надо искать хороший самоучитель
0
|
3 / 3 / 1
Регистрация: 04.11.2013
Сообщений: 285
|
|
26.11.2014, 22:03 [ТС] | 10 |
tyreu,
[Error] 'gets_s' was not declared in this scope опять выдаёт что-то
0
|
Вездепух
11694 / 6373 / 1723
Регистрация: 18.10.2014
Сообщений: 16,062
|
||||||
26.11.2014, 22:05 | 12 | |||||
Во-первых, функции 'gets' "не существует". Если вам нужна такая функция, используйте 'fgets'.
Во-вторых, что здесь вообще делает какой-то 'gets', если это С++ и изначально речь шла о 'std::string' и 'cin'? Функция для чтения строки в 'std::string' называется 'getline'.
0
|
3 / 3 / 1
Регистрация: 04.11.2013
Сообщений: 285
|
|
26.11.2014, 22:06 [ТС] | 13 |
У меня не студия, DEv-C++
0
|
3 / 3 / 1
Регистрация: 04.11.2013
Сообщений: 285
|
|
26.11.2014, 22:06 [ТС] | 15 |
TheCalligrapher, попробывал, всё равно
0
|
8739 / 4317 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
||||||
26.11.2014, 22:06 | 16 | |||||
Сообщение было отмечено Frip как решение
Решение
http://rextester.com/VIZ34038
1
|
3 / 3 / 1
Регистрация: 04.11.2013
Сообщений: 285
|
|
26.11.2014, 22:12 [ТС] | 18 |
Воо спасибо!
Тут у меня вопрос, зачем вы еще раз ввели ::std:: ведь прописано же using namespace std; Попробовал, и так и так работает Добавлено через 25 секунд Простите
0
|
Вездепух
11694 / 6373 / 1723
Регистрация: 18.10.2014
Сообщений: 16,062
|
|
26.11.2014, 22:16 | 19 |
Если у вас уже прописано 'using namespace std;', то 'std' можно не писать. Я приводил свой пример "вне контекста".
0
|
8739 / 4317 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
|||||||||||
26.11.2014, 22:38 | 20 | ||||||||||
Дурная привычка.
Лучше не писать:
0
|
26.11.2014, 22:38 | |
26.11.2014, 22:38 | |
Помогаю со студенческими работами здесь
20
Ошибка в работе с файлами и функцией Проблема с функцией STRLEN() Ошибка при использовании strlen Аппаратная ошибка видео (Ошибка при работе с видеоустройствами привела к некорректной работе Windows). Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |