| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Для новичков > Строковые функции в С++ |
| Автор: EvGeniy2605 7.2.2008, 07:12 |
| Короче дело такое: Я почитал книженции но все равно не могу найти кое что, а именно как в с++ реализованы строковые функции. В частности: Ка перевести число в строку? Как соединить две строки? Как выдернуть из строки iтый символ и если это цифра преобразовать обратно в число? Заранее спасибо. Буду очень благодарен также если меня ткнут носом в книгу где это подробно описано. |
| Автор: reat 7.2.2008, 07:29 | ||
| Для соединения нескольких строк перегружены операторы '+' и '+=' Например:
|
| Автор: Rickert 7.2.2008, 07:49 |
| EvGeniy2605, в С++ таких реализаций нет. Они есть в стандартных либах. Какие ты используешь для работы со строкой? |
| Автор: chaos 7.2.2008, 09:33 | ||||
|
| Автор: TeAnton 7.2.2008, 11:17 | ||
Это здорово объектноориентированно, но внутреннее чувство такое, что это изврат.
2All: А вы как делаете? Добавлено через 10 минут и 17 секунд Вытащить символ из строки, как из массива с помощью квадрантых скобок [], индексация с нуля. Преобразовать в число можно также через istringstream, я делаю проще вычитаю из результата char литерал '0', если результат от 0 до 9, то внутри была цифра. Пока еще не встречал кодировок, где это может не работать. Еще есть способы из C: atoi, sprintf, isdigit, isalpha и т.п. |
| Автор: Mayk 7.2.2008, 11:29 |
std::string str = http://forum.vingrad.ru/index.php?showtopic=175814&view=findpost&p=1353515(1234); |
| Автор: warmonger_ 7.2.2008, 17:33 | ||
|
| Автор: anatox91 7.2.2008, 18:34 | ||
есть функция strcat из cstring... |
| Автор: EvGeniy2605 8.2.2008, 17:25 |
| Часть проблем разрешились осталась еще одна: при использовании cin он считывает только слово! А мне надо предложение с пробелами как это можно сделать? |
| Автор: JackYF 8.2.2008, 17:37 |
cin.getline |
| Автор: EvGeniy2605 8.2.2008, 18:03 | ||
Это должно считать пробелы но выдает: [C++ Error] Unit1.cpp(28): E2235 Member function must be called or its address taken Есть у кого мысли отчего это? |
| Автор: JackYF 8.2.2008, 18:22 | ||
о, ёлки... прочитать документацию никак? getline - вообще-то функция, соответственно вызываться должна с аргументами:
|
| Автор: anatox91 8.2.2008, 18:27 | ||||
или включи
и получай строку
str - символьный массив, в который надо поместить строку |
| Автор: tsrtg 12.2.2008, 02:20 | ||
Лучше использовать не cin.getline, а std::getline, который читает прямо в строку и не требует буфера фиксированного размера.
|
| Автор: jonie 13.2.2008, 20:56 | ||
|