#include "stdafx.h"
#include <iostream>
#include <string>
#include <locale>
#include <algorithm>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
locale loc1 ( "German_Germany" );
// 1-й способ strupr(char *)
char ss[] = "hello , world !";
strupr(ss);
cout<<ss<<endl;
// 2-й способ взял в MSDN
string str("hello !");
use_facet<ctype<char> > ( loc1 ).toupper
(&str[0],&str[str.size()]);
cout << "The lowercase string is: " << str << endl;
// 3-й способ использует алгоритм
string str1("this is the new string");
transform(str1.begin(),str1.end(),str1.begin(),toupper);
cout<<str1<<endl;
return 0;
}
Функция перевода нижнего регистра во верхний
Братцы программисты, помогите! Нужна функция для перевода нижнего регистра в верхний в C++ (при использовании генератора сканеров flex)...
в наиболее общем случае _strup. у std::string метод есть аналогичный
Только strupr:) Вот 3 варианта.
m_Valery пробую компилить...но - облом...пишет типа не известная функция toupper()ю В универе стоит Asp linux11. Где можно достать свежую библиотеку.Я уже 3ью неделю бьюсь над одной лабой...не поддаётся окоянный :)
Цитата: Ai_coder
m_Valery пробую компилить...но - облом...пишет типа не известная функция toupper()ю В универе стоит Asp linux11. Где можно достать свежую библиотеку.Я уже 3ью неделю бьюсь над одной лабой...не поддаётся окоянный :)
Что только в ф-ии toupper проблема ? Остальное как ?Используй 1 из вариантов или ты все сразу используешь ?:) Я делал в Visual Studio 2003 , под Linux не пишу.Ф-ия toupper по идее в ctype.h.Попробуй подключи
Код:
#include <ctype.h>
#include <stdio.h>
#include <stdio.h>
Если и так не сработает - можно попросить модераторов перенести тему в программирование под Linux.
strupr. Инклудь string.h =)
В общем случае, под линухом тот же