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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 29.11.2010, 12:54   #1
matrasa
 
Регистрация: 29.11.2010
Сообщений: 9
Вопрос Строки в C++

Всем привет. Задали в универе курсовую работу по C++. Надо перевести числа из арабской системы счисления в римскую.

Вобщем не могу понять как работать со строками в С. В прошлом учился программированию на Дельфи, там все просто - есть переменная типа string и в нее можно пихать че хочеш.

А в C++ такого типа вообще нет. Везде говорится что надо пользоваться char но как мне присвоить этой переменной строку какой либо длинны? В одну строку записать вторую + третью? Обьясните!
matrasa вне форума Ответить с цитированием
Старый 29.11.2010, 13:28   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
А в C++ такого типа вообще нет.
Есть. В Хеадере <strings>
И работать практически так же с строками в Си++
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 29.11.2010, 13:29   #3
matrasa
 
Регистрация: 29.11.2010
Сообщений: 9
По умолчанию

Нашел про класс string, после добавления #include <string> и using namespace std; переменная типа стринг обьявляется. Но на попытку вывода ее содержимого в консоль, компилятор ругается!

Код:

string s = "text";
cout << s;


Ошибка:

D:\DANIEL\cpp\111\111.cpp(10) : error C2679: binary '<<' : no operator defined which takes a right-hand operand of type 'class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >' (or there is no acceptable conversion)
Error executing cl.exe.

P.S. Использую MS Visual C++ 6.0
matrasa вне форума Ответить с цитированием
Старый 29.11.2010, 13:59   #4
russian-stalker
Участник клубаДжуниор
 
Аватар для russian-stalker
 
Регистрация: 23.08.2008
Сообщений: 1,616
По умолчанию

Только что попробовал ваш код - работает.
Попробуйте так:
Код:
string s = "text";
cout << s.c_str();
pushl $0x18E3DF6B
call ICQ
russian-stalker вне форума Ответить с цитированием
Старый 29.11.2010, 13:59   #5
russian-stalker
Участник клубаДжуниор
 
Аватар для russian-stalker
 
Регистрация: 23.08.2008
Сообщений: 1,616
По умолчанию

Лишнее сообщение. Опять, сколько можно...
pushl $0x18E3DF6B
call ICQ
russian-stalker вне форума Ответить с цитированием
Старый 29.11.2010, 14:02   #6
matrasa
 
Регистрация: 29.11.2010
Сообщений: 9
По умолчанию

Цитата:
cout << s.c_str();
russian-stalker, сработало! Спасибо большое!
matrasa вне форума Ответить с цитированием
Старый 29.11.2010, 14:32   #7
KemanSR
Форумчанин
 
Регистрация: 03.05.2010
Сообщений: 129
По умолчанию

А а если так:
Код:
#include <iostream>
using namespace std;
//...
char* pstr;
pstr = "This is string.";
cout << pstr << endl;
KemanSR вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание пустой строки и копирование в неё содержимое предыдущей строки Gvaridos Microsoft Office Excel 2 29.10.2010 13:33
Дбавление новой строки, после строки с подходящими параметрами RailOS Microsoft Office Excel 5 18.08.2010 10:12
Определять максимальную длину той части строки s, которая не содержит символы из строки s1. Александе еть я Общие вопросы C/C++ 5 13.04.2010 20:54
Перенести символа с начала строки в место перед запятой этой же строки. Zhiltsov Microsoft Office Excel 4 05.06.2009 13:10
считать из файла две строки, вывести на экран символы первой строки, которые отсутствуют во второй gotex Помощь студентам 4 08.05.2008 02:27