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

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

Войти
Регистрация
Восстановить пароль
 
Wiks
0 / 0 / 0
Регистрация: 18.03.2014
Сообщений: 7
#1

Перевод в нижний регистр - C++

19.05.2014, 18:31. Просмотров 642. Ответов 5
Метки нет (Все метки)

Приветствую . Прошу помощи , выдаёт ошибку при переводе в нижний регистр , в чём проблема ?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <vector>
#include <fstream>
#include <string>
#include <algorithm>
#include <iostream>
 
using namespace std;
 
int main()
 
{
    setlocale(LC_ALL, "RUS");
    ifstream infile("file.txt");
    string buffer;
    vector< string > text;
    cout << "Исходник:" << endl;
    while (infile >> buffer) {
        text.push_back(buffer);
        cout << buffer << endl;
    }
    sort(text.begin(), text.end());
    cout << "\n"<<"По алфавиту:" << endl;
    vector<string >::iterator iter = text.begin();
    for (; iter != text.end(); ++iter)
        *iter = _tolower(*iter);  // Здесь ошибка
        cout << *iter << endl;
    
    cout << "\n";
    system("pause");
    return 0;
}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.05.2014, 18:31     Перевод в нижний регистр
Посмотрите здесь:

Перевод в нижний регистр - C++
Есть строка стринг в которой записана кириллица, нужно перевести ее в нижний регистр.

Перевод букв в нижний регистр - C++
Как перевести все буквы строки введенной с клавиатуры в нижний регистр?

Перевод символа в нижний регистр - C++
Привет всем)) у меня такой вопрос: почему функция tolower() возвращает не символ в нижнем регистре, а какие-то цифры (наверное код буквы)....

Кроссплатформенный перевод русских букв в верхний/нижний регистр - C++
Добрый день. В прикрепленном топике описываются способы вывода русских букв на консоль. Но они почти все подвязаны под винду. Более...

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

Нижний регистр - C++
Помогите пожалуйста с заданием. Как правильно написать. А то мучалась, так ни чего не смогла сделать. Задание: Написать программу,...

Преобразование в нижний регистр - C++
Здравствуйте! Почему это не работает (результат неизменен): #include &lt;Windows.h&gt; #include &lt;stdio.h&gt; void...

Строку в нижний регистр - C++
вводится русская строка (слово ) кодировка 1251, необходимо привести ее к нижнему регистру #include &lt;ctype.h&gt; #include &lt;locale.h&gt; ...

Верхний и нижний регистр буквы - C++
#include &lt;cctype&gt; #include &lt;iostream&gt; int main() { using namespace std; char ch; while(cin.get(ch) &amp;&amp; ch !=...

Русские символы в нижний регистр в С++ (debian) - C++
Здравствуйте! Начал изучать С++ (пора бы уже //.о) и где-то за пол месяца начинает что-то более - менее получаться. Поднимаю проблему...

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

Не работает замена символов в файле на нижний регистр - C++
Почему не работает код? По идее должен символы в файле заменить на нижний регистр. int main() { string way = &quot;Example.txt&quot;; ...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
nmcf
5136 / 4456 / 1486
Регистрация: 14.04.2014
Сообщений: 17,695
19.05.2014, 18:50     Перевод в нижний регистр #2
tolower() принимает один символ, а не целый string.
Wiks
0 / 0 / 0
Регистрация: 18.03.2014
Сообщений: 7
19.05.2014, 21:04  [ТС]     Перевод в нижний регистр #3
Спасибо ) И как решить эту проблему ? Использовать transform?
nmcf
5136 / 4456 / 1486
Регистрация: 14.04.2014
Сообщений: 17,695
19.05.2014, 21:14     Перевод в нижний регистр #4
Самое простое - циклом. Ну можешь и transform попробовать.
newbie666
Заблокирован
19.05.2014, 21:19     Перевод в нижний регистр #5
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от Wiks Посмотреть сообщение
*iter = _tolower(*iter); *// Здесь ошибка
замени эту строчку на
C++
1
std::transform(iter->begin(), iter->end(), iter->begin(), ::tolower);
Wiks
0 / 0 / 0
Регистрация: 18.03.2014
Сообщений: 7
20.05.2014, 16:16  [ТС]     Перевод в нижний регистр #6
Огромная благодарность)
Yandex
Объявления
20.05.2014, 16:16     Перевод в нижний регистр
Ответ Создать тему
Опции темы

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