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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 108, средняя оценка - 4.88
Syltan
181 / 7 / 0
Регистрация: 27.08.2009
Сообщений: 868
#1

Функции tolower,islower,isupper - C++

06.09.2009, 00:03. Просмотров 14102. Ответов 35
Метки нет (Все метки)

Если кто знаком с функциями tolower,islower,isupper, дайте пожалуйста с каждой примитивный пример с маленьким коментом, как их использовать. Зараннее благодарю. ПО книге не понимаю.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.09.2009, 00:03     Функции tolower,islower,isupper
Посмотрите здесь:

Out of range при использовании islower, isupper - C++
Ошибка вылезает при использовании islower, isupper. В первом варианте кода использовал такой вариант: bool pre_oxide_1,pre_oxide_2; ...

Найти первые вхождения символов (функции strchr(), tolower()) - C++
В массиве строк , введенных пользователем , найти первые вхождения символов ' s ' и 'S' . Использовать функции strchr ( ) , tolower ( ) .

не работает функция isupper() - C++
Доброе утро!У меня в программе не работает функция isupper(): for(int index = 0; index < strlen(str); index++) { ...

Ошибка с islower - C++
void func(char a) { char *b; for(int i = 0; i<20; i++) { b=&a; if(islower(a)) { cout<<(void*)b<<"\n"; ...

Функция islower - C++
#include <iostream> // для оператора cout #include <cctype> // для функции islower using namespace std; int main(){ char c; ...

Функция islower() - C++
Функция islower() возвращает 2 при любой вводимой строчной букве,так и должно быть?Я знаю,что функция выводит ненулевое значение,если буква...

Функция islower() - C++
Подскажите пожалуйста пример работы этой функции , в программе Visual Studio 2012 C++ (Консольный проект). В учебнике написано нужно...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Gravity
562 / 556 / 39
Регистрация: 29.01.2009
Сообщений: 1,274
06.09.2009, 00:04     Функции tolower,islower,isupper #2
Посмотри здесь http://www.cplusplus.com/reference/clibrary/cctype/
Syltan
181 / 7 / 0
Регистрация: 27.08.2009
Сообщений: 868
06.09.2009, 00:10  [ТС]     Функции tolower,islower,isupper #3
Я просил вообще маленький примитивный примерчик по каждой функции с коментом своими словами(не книжными), а не ссылка на англ. сайт. Спасибо Gravity,но мне эта ссылка ничем не помогла.
Rififi
2359 / 1054 / 44
Регистрация: 03.05.2009
Сообщений: 2,656
06.09.2009, 00:19     Функции tolower,islower,isupper #4
http://msdn.microsoft.com/en-us/libr...14(VS.80).aspx
пример найдешь там же.
Syltan
181 / 7 / 0
Регистрация: 27.08.2009
Сообщений: 868
06.09.2009, 00:22  [ТС]     Функции tolower,islower,isupper #5
У меня на компьютере не работает майкрософстский сайт, уже много раз пробывал,скорей всего вирус. Кто-нибудь может расказать по 2 предложения про каждую функцию, по 2 строки кода своими словами?
easybudda
Эксперт С++
9458 / 5471 / 927
Регистрация: 25.07.2009
Сообщений: 10,495
06.09.2009, 00:25     Функции tolower,islower,isupper #6
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <stdio.h>
#include <ctype.h>
 
/* tolower toupper isupper */
 
int main(){
    char c = 'a';
    
    c = toupper(c);
    printf("Char %c is %s\n", c, (isupper(c)) ? "big" : "small");
    c = tolower(c);
    printf("Char %c is %s\n", c, (isupper(c)) ? "big" : "small");
    return(0);
}
Скомпилируйте, запустите...
Syltan
181 / 7 / 0
Регистрация: 27.08.2009
Сообщений: 868
06.09.2009, 00:33  [ТС]     Функции tolower,islower,isupper #7
Вот так запустилось, ну и чё, я так ничего и не понял зачем эти функции и что они делают.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <cctype>
using namespace std;
 
/* tolower toupper isupper */
 
int main(){
        char c = 'a';
        
        c = toupper(c);
        printf("Char %c is %s\n", c, (isupper(c)) ? "big" : "small");
        c = tolower(c);
        printf("Char %c is %s\n", c, (isupper(c)) ? "big" : "small");
        
        cin.get();
}
easybudda
Эксперт С++
9458 / 5471 / 927
Регистрация: 25.07.2009
Сообщений: 10,495
06.09.2009, 00:44     Функции tolower,islower,isupper #8
Цитата Сообщение от Syltan Посмотреть сообщение
Вот так запустилось, ну и чё, я так ничего и не понял зачем эти функции и что они делают.
Даже и не знаю, куда нагляднее...
toupper возвращает букву в верхнем регистре, tolower - в нижнем, а isupper возвращает true, если буква в верхнем регистре...
M128K145
Эксперт С++
8284 / 3503 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
06.09.2009, 00:55     Функции tolower,islower,isupper #9
tolower (прагма в помощь, to lower - для понижения) - следовательно функция которая преобразовывает все символы в строке в нижний регистр
toupper - обратная к tolower.
isupper (прагма в помощь, is upper - верхний) - проверка является ли текущий символ символом верхнего регистра или нет. Возвращает true если ответ положительный, false иначе.
islower - обратная к isupper
easybudda привел пример их использования. Пример очень толковый в котором все предельно просто
alex_x_x
06.09.2009, 00:58
  #10

Не по теме:

ппц, чет не понимаю, куда кнопка фу то делась

odip
Эксперт С++
7155 / 3295 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
06.09.2009, 14:53     Функции tolower,islower,isupper #11
А кому ты хотел Фу сказать ?
alex_x_x
06.09.2009, 15:02
  #12

Не по теме:

Цитата Сообщение от Syltan Посмотреть сообщение
Я просил вообще маленький примитивный примерчик по каждой функции с коментом своими словами(не книжными), а не ссылка на англ. сайт. Спасибо Gravity,но мне эта ссылка ничем не помогла.
Цитата Сообщение от Syltan Посмотреть сообщение
У меня на компьютере не работает майкрософстский сайт, уже много раз пробывал,скорей всего вирус. Кто-нибудь может расказать по 2 предложения про каждую функцию, по 2 строки кода своими словами?

Syltan
181 / 7 / 0
Регистрация: 27.08.2009
Сообщений: 868
07.09.2009, 15:26  [ТС]     Функции tolower,islower,isupper #13
Вроде разобрался, со всеми этими функциями. Попробовал написать тренировочную программу.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <ctype.h>
using namespace std;
 
int main()
{
setlocale(0,"");
char *p;
int i;
char str[80] = "Сникерс Настоящий";
p = str;
for(i = 0; p[i]; i++) {
if(isupper(p[i]))
p[i] = tolower(p[i]);
else
if(islower(p[i]))
p[i] = toupper(p[i]);
}
 
 
cout<<"Результат\n"<<str;
cin.get();
}
Дело в том,что в результате, программа должна выдать результат:
сНИКЕРС нАСТОЯЩИЙ, а программа выводит: сНИКЕРС нАСТОяЩИЙ
НЕ знаю почему.
kirill29
2051 / 1214 / 55
Регистрация: 01.02.2009
Сообщений: 2,842
07.09.2009, 15:47     Функции tolower,islower,isupper #14
А если попробовать другое словосочетание, где есть буква "я";
ИМХО у меня на C# все работает.
odip
Эксперт С++
7155 / 3295 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
07.09.2009, 18:06     Функции tolower,islower,isupper #15
В кодировке CP1251 набрать:
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
#include <iostream>
#include <ctype.h>
 
using namespace std;
 
int main( void ) {
 
int i;
unsigned char buf[100];
 
 
setlocale( LC_ALL, "" );
 
strcpy( (char*)buf, "Сникерс Настоящий" );
for ( i= 0; buf[i]!='\0'; i++ ) {
    if ( isupper( buf[i] ) ) {
        buf[i]= tolower( buf[i] );
    } else if ( islower( buf[i] ) ) {
        buf[i]= toupper( buf[i] );
    }
}
 
cout <<"Result\n" <<buf <<"\n";
return 0;
 
}
В консоли:
chcp 1251
Сменить шрифт на "Lucida Console"
Миниатюры
Функции tolower,islower,isupper  
Syltan
181 / 7 / 0
Регистрация: 27.08.2009
Сообщений: 868
07.09.2009, 19:57  [ТС]     Функции tolower,islower,isupper #16
Спасибо большое, оказывается необходимо нужно было набрать строку,
setlocale( LC_ALL, "" );
odip
Эксперт С++
7155 / 3295 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
07.09.2009, 20:08     Функции tolower,islower,isupper #17
Возможно еще unsinged char buf[] помог
Syltan
181 / 7 / 0
Регистрация: 27.08.2009
Сообщений: 868
07.09.2009, 21:08  [ТС]     Функции tolower,islower,isupper #18
А, нет char buf[] всё-таки.

Добавлено через 4 минуты
Вы не скажите,что означает (char*)buf
из строки:
C++
1
strcpy( (char*)buf, "Сникерс Настоящий" );
odip
Эксперт С++
7155 / 3295 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
07.09.2009, 21:20     Функции tolower,islower,isupper #19
g++ выдал warning на разные типы
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.09.2009, 21:24     Функции tolower,islower,isupper
Еще ссылки по теме:

помогите с islower() и setfill() - C++
1)Библиотечная функция islower() принимает в качестве аргумента один символ (букву) и возвращает ненулевое целое значение в том случае,...

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

Как реализовать tolower()? - C++
Подскажите, пожалуйста, как применить функцию tolower() к переменной типа vector&lt;int&gt;::size_type Вот фрагмент кода, приводящий к ошибке:...

Tolower для русских букв - C++
Есть символьный массив с русскими буквами: &quot;Сегодня Прекрасная Погода&quot;. Мне нужно заглавные буквы изменить с верхнего регистра на нижний....

toupper, tolower, strlen и кириллица - C++
Эти три функции не хотят нормально работать с кириллицей. Если им скормить американские литеры, все нормально. Но вот, например, эта...


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

Или воспользуйтесь поиском по форуму:
Syltan
181 / 7 / 0
Регистрация: 27.08.2009
Сообщений: 868
07.09.2009, 21:24  [ТС]     Функции tolower,islower,isupper #20
Я вообще спросил про вот это,чо оно такое:
C++
1
(char*)buf
Yandex
Объявления
07.09.2009, 21:24     Функции tolower,islower,isupper
Ответ Создать тему
Опции темы

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