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

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

Войти
Регистрация
Восстановить пароль
 
Heidel
110 / 110 / 7
Регистрация: 11.10.2011
Сообщений: 647
#1

Как работать со строками? - C++

14.02.2012, 13:38. Просмотров 678. Ответов 9
Метки нет (Все метки)

Не мог бы кто-нибудь объяснить азы работы со стороками или дать ссылки, где это подробно объясняется? В прошлом семестре мы работали со строками как с массивом символьных переменных, объявляя и считывая их, например, так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
using namespace std;
 
int main ()
{
    const int MAX_LEN=101;
    
    char str[MAX_LEN];
    cout << "Enter a string (max "<< MAX_LEN-1 << " symbols)\n";
    cin.getline (str, MAX_LEN);
 
    return 0;
}
в этом семестре понадобилось работать со строкой, используя библиотеку string, объяснить нам как это делается забыли, а самой разобраться не очень получается.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.02.2012, 13:38     Как работать со строками?
Посмотрите здесь:

Как правильно работать со строками? - C++
Вообщем суть вопроса такова, что я не совсем понимаю как происходит работа со строками. Вот к примеру: есть входной файл a.in в...

Как работать со строками при размещении класса в памяти кратно 16 байт? - C++
При обычном выделении памяти через New не работает. Для класса внутри которого я пытаюсь манипулировать со строками память выделяется...

Работа со строками, как с массивами - C++
Написать программу, которая принимает у пользователя строку и выводит ее по 4 символа по каждой строке. Например, строка Программирование...

Работа со строками. Как найти фразу? - C++
Вот фрагмент из задачи: Далее в новой строки следует зашифрованный текст объёмом не более 10^5 символов. Если находится...

Работа со строками как с массивом символов - C++
Работаю в Borland C++3.1 Нt понимаю почему не компиллируется, выдает постоянно ошибку - &quot;Unable to open file 'TCLASS.LIB' &quot; ...

Работа со строками. Как удалить символ с строки - C++
Здраствуйте помогите пожалуйста. не знаю как удалать символы с строки знаю что с помощью ERASE но не знаю как помогите пожалуйста!

Нюансы работы со строками: как в C++ можно объявлять и инициализировать строки? - C++
Добрый день! Подскажите пожалуйста, как в 17-ой строке присвоить слово? Один символ присваивается, но со словом и тем более предложением...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zss
Модератор
Эксперт С++
6321 / 5905 / 1913
Регистрация: 18.12.2011
Сообщений: 15,182
Завершенные тесты: 1
14.02.2012, 13:42     Как работать со строками? #2
C++
1
2
3
4
5
6
7
8
9
10
11
[FONT=monospace]
[/FONT]#include <iostream>
#iclude <string>
using namespace std;
int main ()
{
         string str;
         cout << "Enter a string\n";
         cin>>str;           
         return 0; 
}
Heidel
110 / 110 / 7
Регистрация: 11.10.2011
Сообщений: 647
14.02.2012, 14:34  [ТС]     Как работать со строками? #3
zss2, эта функция считает строку до первого пробела, верно?

Добавлено через 31 минуту
Задача: вывести символы первого и последнего символов в строке.
Это правильное решение?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <string>
using namespace std;
 
int main ()
{
    string str;
    cout << "Enter a string\n";
    getline(cin,str);
 
    cout << "the code of the fisrt symbol '" << str[0] << "' is " << int(str[0]) << "\n";
    cout << "the code of the last symbol '" << str[str.length()-1] << "' is " << int(str[str.length()-1]) << "\n";
 
    return 0;
}
-=ЮрА=-
14.02.2012, 16:16
  #4

Не по теме:

Цитата Сообщение от Heidel Посмотреть сообщение
getline(cin,str);
- так можно ввести строку с пробелами
Цитата Сообщение от Heidel Посмотреть сообщение
Задача: вывести символы первого и последнего символов в строке.
Это правильное решение?
- да верное

От себя предлагаю в твой алгоритм добавить стоп-точку записав перед return 0;
функцию system("pause");

PS:Heidel, если твой компилятор стар - к примеру VisualStudio 6.0 после того как напечатаешь вводимый текст Enter нужно будет жать 2 раза...

Heidel
110 / 110 / 7
Регистрация: 11.10.2011
Сообщений: 647
14.02.2012, 16:35  [ТС]     Как работать со строками? #5
-=ЮрА=-, да, я пишу в VisualStudio 6.0 и после ввода текста приходится нажимать на Enter 2 раза. А от этого как-то можно избавиться?

А зачем нужна стоп-точка перед return 0; ?
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
14.02.2012, 17:01     Как работать со строками? #6
Цитата Сообщение от Heidel Посмотреть сообщение
А зачем нужна стоп-точка перед return 0; ?
Нужно запускать из командной строки.
-=ЮрА=-
Заблокирован
Автор FAQ
14.02.2012, 17:44     Как работать со строками? #7
Цитата Сообщение от Heidel Посмотреть сообщение
А от этого как-то можно избавиться?
- для 6-ки пока так и не нашёл решения, в 9-й версии всё отрабатывает по одному нажатию.

Цитата Сообщение от Heidel Посмотреть сообщение
А зачем нужна стоп-точка перед return 0; ?
- тут всё зависит, будете ли вы работать с программой через командную строку либо как с отдельным приложением, в последнем случае без стоп-точки вконце приложение отработав сразу закроется(мигнёт на долю секунды и прости прощай...). Вот поэтому и вводится стоп-точка - программа ждёт перед закрытием нажатия любого ключа на клавиатуре.
Heidel
110 / 110 / 7
Регистрация: 11.10.2011
Сообщений: 647
14.02.2012, 19:52  [ТС]     Как работать со строками? #8
-=ЮрА=-, я создаю консольное приложение, оно не закрывается после завершения работы программы, но спасибо, буду знать.
-=ЮрА=-
14.02.2012, 20:13
  #9

Не по теме:

Цитата Сообщение от Heidel Посмотреть сообщение
-=ЮрА=-, я создаю консольное приложение, оно не закрывается после завершения работы программы, но спасибо, буду знать.
- потому что ты запускаешь его через студию и она контролирует его завершение. Попробуй открыть папку Debug и щёлкнуть по экзешнику как по обычному приложению - сильно удивишся...

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.02.2012, 20:23     Как работать со строками?
Еще ссылки по теме:

Работа со строками. Как вывести последнее слово палиндром в моей строке? - C++
#define _CRT_SECURE_NO_WARNINGS #include &lt;iostream&gt; #include &lt;cstring&gt; using namespace std; int main(){ char *str = new...

Как работать с va_list? - C++
Есть функция: std::wstring APP::Execute (std::wstring scrName, wchar_t *args,...) { va_list ArgsL; va_start(ArgsL,args); ...

как работать с char* - C++
вопщем, есть задание: создайте класс osoba, конструктору которого передаются значения: фамилия, имя (char*), зарплата (double). Нужна...

Как работать с getch()? - C++
Как использовать getch и в то же время чтобы например переменная а имплементирована на 1 (а++) Потому что обычно надо ждать пока...

Как работать с DLL - C++
Посоветуйти какую нить книгу по работе с Dll - файлами


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

Или воспользуйтесь поиском по форуму:
Heidel
110 / 110 / 7
Регистрация: 11.10.2011
Сообщений: 647
14.02.2012, 20:23  [ТС]     Как работать со строками? #10
-=ЮрА=-, да, действительно, окно открывается и мгновенно закрывается.
Yandex
Объявления
14.02.2012, 20:23     Как работать со строками?
Ответ Создать тему
Опции темы

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