Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.79/189: Рейтинг темы: голосов - 189, средняя оценка - 4.79
241 / 9 / 7
Регистрация: 27.08.2009
Сообщений: 868
1

Функции tolower,islower,isupper

06.09.2009, 00:03. Показов 36376. Ответов 40
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Если кто знаком с функциями tolower,islower,isupper, дайте пожалуйста с каждой примитивный пример с маленьким коментом, как их использовать. Зараннее благодарю. ПО книге не понимаю.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.09.2009, 00:03
Ответы с готовыми решениями:

Out of range при использовании islower, isupper
Ошибка вылезает при использовании islower, isupper. В первом варианте кода использовал такой...

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

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

Функция islower
#include <iostream> // для оператора cout #include <cctype> // для функции islower using...

40
577 / 571 / 65
Регистрация: 29.01.2009
Сообщений: 1,274
06.09.2009, 00:04 2
Посмотри здесь http://www.cplusplus.com/refer... ry/cctype/
0
241 / 9 / 7
Регистрация: 27.08.2009
Сообщений: 868
06.09.2009, 00:10  [ТС] 3
Я просил вообще маленький примитивный примерчик по каждой функции с коментом своими словами(не книжными), а не ссылка на англ. сайт. Спасибо Gravity,но мне эта ссылка ничем не помогла.
0
MCSD: APP BUILDER
8794 / 1073 / 104
Регистрация: 17.06.2006
Сообщений: 12,602
06.09.2009, 00:19 4
http://msdn.microsoft.com/en-u... S.80).aspx
пример найдешь там же.
0
241 / 9 / 7
Регистрация: 27.08.2009
Сообщений: 868
06.09.2009, 00:22  [ТС] 5
У меня на компьютере не работает майкрософстский сайт, уже много раз пробывал,скорей всего вирус. Кто-нибудь может расказать по 2 предложения про каждую функцию, по 2 строки кода своими словами?
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
12831 / 7568 / 1764
Регистрация: 25.07.2009
Сообщений: 13,959
06.09.2009, 00:25 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);
}
Скомпилируйте, запустите...
1
241 / 9 / 7
Регистрация: 27.08.2009
Сообщений: 868
06.09.2009, 00:33  [ТС] 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();
}
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
12831 / 7568 / 1764
Регистрация: 25.07.2009
Сообщений: 13,959
06.09.2009, 00:44 8
Цитата Сообщение от Syltan Посмотреть сообщение
Вот так запустилось, ну и чё, я так ничего и не понял зачем эти функции и что они делают.
Даже и не знаю, куда нагляднее...
toupper возвращает букву в верхнем регистре, tolower - в нижнем, а isupper возвращает true, если буква в верхнем регистре...
1
Эксперт JavaЭксперт С++
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
06.09.2009, 00:55 9
tolower (прагма в помощь, to lower - для понижения) - следовательно функция которая преобразовывает все символы в строке в нижний регистр
toupper - обратная к tolower.
isupper (прагма в помощь, is upper - верхний) - проверка является ли текущий символ символом верхнего регистра или нет. Возвращает true если ответ положительный, false иначе.
islower - обратная к isupper
easybudda привел пример их использования. Пример очень толковый в котором все предельно просто
2
alex_x_x
06.09.2009, 00:58
  #10

Не по теме:

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

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

Не по теме:

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

0
241 / 9 / 7
Регистрация: 27.08.2009
Сообщений: 868
07.09.2009, 15:26  [ТС] 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();
}
Дело в том,что в результате, программа должна выдать результат:
сНИКЕРС нАСТОЯЩИЙ, а программа выводит: сНИКЕРС нАСТОяЩИЙ
НЕ знаю почему.
0
2096 / 1261 / 171
Регистрация: 01.02.2009
Сообщений: 2,842
07.09.2009, 15:47 14
А если попробовать другое словосочетание, где есть буква "я";
ИМХО у меня на C# все работает.
0
Эксперт С++
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
07.09.2009, 18:06 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  
0
241 / 9 / 7
Регистрация: 27.08.2009
Сообщений: 868
07.09.2009, 19:57  [ТС] 16
Спасибо большое, оказывается необходимо нужно было набрать строку,
setlocale( LC_ALL, "" );
0
Эксперт С++
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
07.09.2009, 20:08 17
Возможно еще unsinged char buf[] помог
0
241 / 9 / 7
Регистрация: 27.08.2009
Сообщений: 868
07.09.2009, 21:08  [ТС] 18
А, нет char buf[] всё-таки.

Добавлено через 4 минуты
Вы не скажите,что означает (char*)buf
из строки:
C++
1
strcpy( (char*)buf, "Сникерс Настоящий" );
0
Эксперт С++
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
07.09.2009, 21:20 19
g++ выдал warning на разные типы
0
241 / 9 / 7
Регистрация: 27.08.2009
Сообщений: 868
07.09.2009, 21:24  [ТС] 20
Я вообще спросил про вот это,чо оно такое:
C++
1
(char*)buf
0
07.09.2009, 21:24
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.09.2009, 21:24
Помогаю со студенческими работами здесь

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

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

Ошибка с islower
void func(char a) { char *b; for(int i = 0; i&lt;20; i++) { b=&amp;a; if(islower(a)) {...

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


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru