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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.90
lostpoet
7 / 7 / 2
Регистрация: 21.03.2012
Сообщений: 96
#1

Длина строки - C++

04.11.2012, 18:11. Просмотров 1434. Ответов 18
Метки нет (Все метки)

У меня задача стоит что бы пользователь ввёл какой-то текст, а потом программа вычислала длину этой стороки.
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream.h>
#include <string.h>
#include <conio.h>
void main()
{
clrscr();
char text; int n,m,d;
cout<<"vvedit prizvische, im'ja, po bat'kovi"<<endl;
cin>>text;
d=strlen(text);
getch();
}
Вот код начала программы (просто там ище стоит задание определить сколько всего букв "а", но об этом потом) и на строчке где d=strlen(text); выдает постоянно ошибку. Помогите пожалуйста с решением этой проблемы. Заранее благодарна=))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.11.2012, 18:11
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Длина строки (C++):

появилась загвоздка с функцией. нужно вывести на экран строку, сост. из звездочек. Длина строки-параметр функциииз звезд. длина строки - - C++
Я видела, что на форуме есть подобные задачи, но ни одно из их решений не работает на моем dev cpp.:( вот вариант решения, но он не...

Если длина введенной строки кратна 4, первую часть строки поменять местами со второй - C++
Если длина введенной строки кратна 4, первую часть строки поменять местами со второй.

Удалить из строки среднюю букву, если длина строки нечётная или две средних в противном случае - C++
Строки. Дана строка S. Удалите из неё среднюю букву, если длина строки нечётная или две средних в противном случае. Формат входных...

Длина строки в С++ - C++
Проблема с программой,дальше мыслей нету никаких. Нужно чтобы программа определяла длину строки(вводишь строку,а программа показывает...

длина строки - C++
Здравствуйте. Есть такой код. char stroka; char *str=new char ; cout&lt;&lt;str&lt;&lt;&quot; - &quot;&lt;&lt;strlen(str)&lt;&lt;endl&lt;&lt;stroka&lt;&lt;&quot; - ...

Длина строки в С++ - C++
Здравствуйте, кто может, подскажите, как определить длину строки в С++. Знаю, что в паскале было бы так: c:=lenght(s); А как на С++ не...

18
Croessmah
Эксперт CЭксперт С++
13514 / 7673 / 867
Регистрация: 27.09.2012
Сообщений: 18,896
Записей в блоге: 3
Завершенные тесты: 1
04.11.2012, 18:26 #2
как-то так:
C++
1
2
3
4
5
6
    char text[256]={0}; int n,m,d;
    std::cout<<"vvedit prizvische, im'ja, po bat'kovi"<<std::endl;
    std::cin>>text;
    d=strlen(text);
    std::cout<<d<<std::endl;
    getch();
0
wtf?
19 / 19 / 0
Регистрация: 03.10.2010
Сообщений: 48
04.11.2012, 18:28 #3
C++
1
char text;
это обьявление всего лишь одного символа а не строки..
вот правильный вариант
C++
1
2
3
4
    char text[80]; int n,m,d;
    cout<<"vvedit prizvische, im'ja, po bat'kovi"<<endl;
    cin.getline( text, 80 );
    d=strlen(text);
Добавлено через 56 секунд
Croessmah,
C++
1
std::cin>>text;
так будет считыватся только первое слово
0
lostpoet
7 / 7 / 2
Регистрация: 21.03.2012
Сообщений: 96
04.11.2012, 18:31  [ТС] #4
Добавила в програму, а оно только еще больше ошыбок выдало. И что такое std?

Добавлено через 1 минуту
нащёт считываться, то я поменяю, а у меня компилятор не примает команду strlen(text) как с етим бороться?
0
kazak
3038 / 2359 / 157
Регистрация: 11.03.2009
Сообщений: 5,405
Завершенные тесты: 1
04.11.2012, 18:35 #5
Цитата Сообщение от lostpoet Посмотреть сообщение
а у меня компилятор не примает команду strlen(text) как с етим бороться?
strlen в качестве аргумента принимает указатель на char, а Вы ему пытаетесь скормить просто char.
0
Croessmah
Эксперт CЭксперт С++
13514 / 7673 / 867
Регистрация: 27.09.2012
Сообщений: 18,896
Записей в блоге: 3
Завершенные тесты: 1
04.11.2012, 18:36 #6
Цитата Сообщение от lostpoet Посмотреть сообщение
Добавила в програму, а оно только еще больше ошыбок выдало. И что такое std?
фаил <iostream.h> давно устарел. Вместо него используется <iostream>.
В последнем определения cout, cin, и т.д. определены в пространстве имен std.
Цитата Сообщение от lostpoet Посмотреть сообщение
нащёт считываться, то я поменяю, а у меня компилятор не примает команду strlen(text) как с етим бороться?
Мы не телепаты. Что пишет компилятор?
0
lostpoet
7 / 7 / 2
Регистрация: 21.03.2012
Сообщений: 96
04.11.2012, 18:37  [ТС] #7
Тогда если не сложно напишыте отрывок программы, просто с указателями не имела дела и не могу толком розобраться с ними.
0
kazak
04.11.2012, 18:38
  #8

Не по теме:

Цитата Сообщение от Croessmah Посмотреть сообщение
фаил <iostream.h> давно устарел.
Тем не менее, Borland C++ for DOS все еще популярен в наших вузах.

0
Croessmah
Эксперт CЭксперт С++
13514 / 7673 / 867
Регистрация: 27.09.2012
Сообщений: 18,896
Записей в блоге: 3
Завершенные тесты: 1
04.11.2012, 18:39 #9
C++
1
2
3
4
5
6
7
8
9
void main()
{
clrscr();
char text[80]; int n,m,d;
cout<<"vvedit prizvische, im'ja, po bat'kovi"<<endl;
cin.getline( text, 80 );
d=strlen(text);
getch();
}
0
kazak
3038 / 2359 / 157
Регистрация: 11.03.2009
Сообщений: 5,405
Завершенные тесты: 1
04.11.2012, 18:40 #10
lostpoet, воспользуйтесь вариантом wtf?.

Добавлено через 48 секунд
Или последним Croessmah'a
0
Croessmah
04.11.2012, 18:41
  #11

Не по теме:

Цитата Сообщение от kazak Посмотреть сообщение
Тем не менее, Borland C++ for DOS все еще популярен в наших вузах.
Но, видимо, не уведомляют о том, что фаил устаревший.

0
kazak
04.11.2012, 18:43
  #12

Не по теме:

Croessmah, кто б преподавателей уведомил

0
lostpoet
7 / 7 / 2
Регистрация: 21.03.2012
Сообщений: 96
04.11.2012, 18:43  [ТС] #13
Если брать начальный код программы, который я предоставила - то выдает вот такие ошибки:
Error 92.CPP 10: Cannot convert 'int' to 'const char *'
Error 92.CPP 10: Type mismatch in parametr '__s' in call to '__strlen(const char *)'
0
Croessmah
04.11.2012, 18:44
  #14

Не по теме:

Цитата Сообщение от kazak Посмотреть сообщение
Croessmah, кто б преподавателей уведомил
В точку! Но всё же...

0
lostpoet
7 / 7 / 2
Регистрация: 21.03.2012
Сообщений: 96
04.11.2012, 18:44  [ТС] #15
И еще одно использую Турбо Си 3,0, поетому диирективы препоцесора записаны верно

Но только преподаватель сказал чтобы char text; оставался как есть и не задавать определённое количество символов для него
0
04.11.2012, 18:44
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.11.2012, 18:44
Привет! Вот еще темы с ответами:

Длина C-строки - C++
Столкнулся с такой проблемой: при передаче функции char-массива и нахождения его размера в этой функции результат получается равным 4... ...

длина строки - C++
Определить длинну строки, которая введена пользователем.

Длина строки - вопросец. - C++
int le(char array) { int i; for(i=0;array != NULL;i++); return i; }

файл и длина строки - C++
Предположим, я создал файл в блокноте. Назвал его &quot;A.txt&quot;. В этом файле написал какое-то слово. Сохранил. Как мне подсчитать длину этого...


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

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

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