Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.04.2012, 17:58   #1
WaterBall
 
Регистрация: 19.04.2012
Сообщений: 3
По умолчанию Создание строки

Задача в том, чтоб создать строку, длинна которой определяется по окончанию ввода текста.
Пробовал рекурсивно - не вышло. Надеюсь, кто-нибудь сможет придумать.
Или возможно есть какой-нибудь более легкий способ.

Идея примерно такая
PHP код:
char textin(char *text)
{
    static 
int i=0;
    
char ch=getche();
    if(
ch==13)
    {
        if(
itext = new char[i];
    }
    else
    {
        
i++;
        
textin(text);
        
i--;
        
text[i]=ch// На этом моменте, конечно же, программа выдает ошибку
        
return text;
    }
}

int _tmain(int argc_TCHARargv[])
{
    
char text;
    
text textin(text);
    
//...

WaterBall вне форума Ответить с цитированием
Старый 19.04.2012, 18:18   #2
Kukurudza
Форумчанин
 
Регистрация: 02.06.2011
Сообщений: 282
По умолчанию

std::string str;
cin >> str;
cout << str.size();
нэ?
Kukurudza вне форума Ответить с цитированием
Старый 19.04.2012, 23:25   #3
WaterBall
 
Регистрация: 19.04.2012
Сообщений: 3
По умолчанию

Цитата:
Сообщение от Kukurudza Посмотреть сообщение
std::string str;
cin >> str;
cout << str.size();
нэ?
PHP код:
cin >> str
error C2678: binary '>>' : no operator found which takes a left-hand operand of type 'std::istream' (or there is no acceptable conversion)
Что не так?
WaterBall вне форума Ответить с цитированием
Старый 20.04.2012, 02:25   #4
stdio
Форумчанин
 
Аватар для stdio
 
Регистрация: 14.02.2012
Сообщений: 105
По умолчанию

Код:
#include "stdafx.h"
#include <iostream>
#include <conio.h>
using namespace std;	
void main()
{
	char str[1024];
	cout << "vvedite stroku" << endl;
	cin >> str;
	cout << "dlina stroki=" << strlen(str);
	_getch();
}
stdio вне форума Ответить с цитированием
Старый 20.04.2012, 16:07   #5
WaterBall
 
Регистрация: 19.04.2012
Сообщений: 3
По умолчанию

В этом случае длинна массива заранее определена - 1024, а я пытался сначала набрать текст, а потом уже выделить под него память...
WaterBall вне форума Ответить с цитированием
Старый 20.04.2012, 16:33   #6
Blade
Software Engineer
Участник клуба
 
Аватар для Blade
 
Регистрация: 07.04.2007
Сообщений: 1,618
По умолчанию

Цитата:
Сообщение от WaterBall Посмотреть сообщение
PHP код:
cin >> str
error C2678: binary '>>' : no operator found which takes a left-hand operand of type 'std::istream' (or there is no acceptable conversion)
Что не так?
1. #include <iostream>
2. std::cin
Мужество есть лишь у тех, кто ощутил сердцем страх, кто смотрит в пропасть, но смотрит с гордостью в глазах. (с) Ария
Blade вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
создание запросов на отсутствие строки torrtik Microsoft Office Access 13 05.05.2011 10:10
Создание пустой строки и копирование в неё содержимое предыдущей строки Gvaridos Microsoft Office Excel 2 29.10.2010 13:33
создание строки поиска PaWeLL Общие вопросы Delphi 3 29.04.2010 13:59
создание класса строки в С++ patriarch Помощь студентам 2 18.09.2009 14:42
Паскаль. Создание бегущей строки. Razorishe Помощь студентам 6 21.03.2009 05:41