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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 71, средняя оценка - 4.82
Matrasa
0 / 0 / 0
Регистрация: 02.12.2010
Сообщений: 40
#1

Ввод с консоли в *char - C++

06.12.2010, 09:00. Просмотров 10942. Ответов 3
Метки нет (Все метки)

Как ввести строку с консоли в переменную типа *char? Вот такой код не работает

C++
1
2
3
4
5
6
7
8
#include <iostream.h>
 
char *string[];
 
void main()
{
cin >> string;
}
Такой код тоже не работает.

C++
1
cin.getline(string, sizeof(string));
Пожалуйста подкажите как? Или можно каким нибудь образом в *char поместить значение простого char??
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.12.2010, 09:00
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ввод с консоли в *char (C++):

Считывание в массив char с консоли - C++
не выходит считать массив чаров, после перевода строки консоль не закрывается, а просто переходит на др. строку и никак не реагирует, либо...

Ввести строку char с консоли - C++
Добрый день! Помогите, пожалуйста. В моей программе используются переменные char* Я их присваивала в самом начале. Теперь решила...

Ввод в консоли - C++
Возникла проблема: необходимо при вводе в консоли сделать так, чтобы при нажатии enter вводил значение по умолчанию. Также необходима...

Ввод текста в консоли - C++
Здравствуйте. Задание: Ввести текст, поменять местами 5й и 7й символы. #include &lt;conio.h&gt; #include &lt;iostream.h&gt; #define SIZE...

Ввод кириллицы в консоли - C++
Есть задание создать некоторую базу. Базу эту можно дописывать. Но возникает проблема ввода кириллицы с консоли. Пробовал это решить...

Ввод строки с консоли - C++
Приветствую! Как реализовать ввод строки с консоли? В данный момент задать строку можно из кода программы. Конкретнее: string...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Aye Aye
367 / 281 / 36
Регистрация: 17.12.2009
Сообщений: 567
06.12.2010, 09:10 #2
обычно делают:
C
1
2
char buffer[128];
sacanf("%s",buffer);
а если надо для char*
то тут твоя string это просто указатель на тип char не больше, никакой памяти под нее не резервируется, это надо делать самостоятельно:
C++
1
2
3
char *string = new char[128];
scanf("%s",string);
delete string;
вообще лучше использовать стандартный класс std::string (и не называть его именем переменные, компилятор, конечно же, разберется что к чему, но зачем лишний риск)
C++
1
2
3
4
5
#include <iostream>
#include <string>
std::string str(80);
std::cin.getline(str,80);
char c1 = str[0], c2=str[1];
0
Matrasa
0 / 0 / 0
Регистрация: 02.12.2010
Сообщений: 40
06.12.2010, 09:31  [ТС] #3
Aye Aye, Спасибо тебе огромное! Но у меня возникла проблема

C++
1
2
3
4
5
6
7
8
9
char *string = new char[128];
char *string1 = new char[128];
char *string2 = new char[128];
cout << "Enter num 1\n";
scanf("%s",string1);
cout << "Enter num 2\n";
scanf("%s",string2);
string = Add2Roman(string1, string2);
cout << string;
Все работает, когда прогу запускаеш - черный экран с курсором, первая строчка cout не выводится. После ввода 1 значения, второй cout также не срабатывает. И только потом выводятся эти две строки и результат.

Пример.

XX
II
Enter num 1
Enter num 2
XXIIPress any key to continue_


Добавлено через 2 минуты
Гы, уже все сделал. Меня спас старый добрый printf(); Еще раз спасибо.
0
Aye Aye
367 / 281 / 36
Регистрация: 17.12.2009
Сообщений: 567
06.12.2010, 10:34 #4
все было потому, что cout и cin не синхронизированы с printf и scanf в DOS, это надо отдельно делать руками. незачто, у меня кстати и так все работает в linux, ибо в линуксе они пишут в одни и те же потоки, а как в DOS я не знаю.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.12.2010, 10:34
Привет! Вот еще темы с ответами:

потоковый ввод с консоли - C++
Всем привет! Нужно в цикле вводить строки с консоли, пока пользователю не надоест. Вопрос: как пользователю завершить ввод? Такой код: ...

Ввод символов из консоли - C++
Всем привет! Подскажите пожалуйста почему, когда мы через консоль (путем драгЭдропа) указываем адрес файла, и этот адрес имеет пробел,...

Ввод строки с консоли - C++
Всем привет, такой вопрос. Нашел годный пример. Как реализовать ввод строки &quot;5*3-9/3&quot; вручную с консоли? Заранее благодарен. ...

Ввод предложения с консоли - C++
Здравствуйте, как в 7 строке сделать самостоятельный ввод текста. #include &lt;iostream&gt; #include &lt;string&gt; using namespace std; int...


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

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

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