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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 20, средняя оценка - 4.80
Hardcore
4 / 4 / 0
Регистрация: 24.10.2010
Сообщений: 200
#1

Cctype - C++

25.10.2010, 14:24. Просмотров 2538. Ответов 15
Метки нет (Все метки)

Ку, как правильно использовать функцию "isalpha ()" с pointer
если можно с примером.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.10.2010, 14:24
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Cctype (C++):

Использование cctype - C++
1. Напишите программу, которая читает клавиатурный ввод до символа @ и повторяет его, за исключением десятичных цифр, преобразуя каждую...

Функции <cctype> - C++
Подскажите никак не пойму почему break в цикле не срабатывает (( Нужно вводить числовые значения в массив , либо пока он не заполниться...

Аналог функции isalpha() (<cctype>) - C++
Здравствуйте) Я так понял, функция isalpha() не работает с русскими буквами(?), пришлось написать свою версию для работы с русскими...

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

Использование cctype - C++
1. Напишите программу, которая читает клавиатурный ввод до символа @ и повторяет его, за исключением десятичных цифр, преобразуя каждую...

Функции <cctype> - C++
Подскажите никак не пойму почему break в цикле не срабатывает (( Нужно вводить числовые значения в массив , либо пока он не заполниться...

Аналог функции isalpha() (<cctype>) - C++
Здравствуйте) Я так понял, функция isalpha() не работает с русскими буквами(?), пришлось написать свою версию для работы с русскими...

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

Использование cctype - C++
1. Напишите программу, которая читает клавиатурный ввод до символа @ и повторяет его, за исключением десятичных цифр, преобразуя каждую...

Функции <cctype> - C++
Подскажите никак не пойму почему break в цикле не срабатывает (( Нужно вводить числовые значения в массив , либо пока он не заполниться...

Аналог функции isalpha() (<cctype>) - C++
Здравствуйте) Я так понял, функция isalpha() не работает с русскими буквами(?), пришлось написать свою версию для работы с русскими...

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

Использование cctype - C++
1. Напишите программу, которая читает клавиатурный ввод до символа @ и повторяет его, за исключением десятичных цифр, преобразуя каждую...

Функции <cctype> - C++
Подскажите никак не пойму почему break в цикле не срабатывает (( Нужно вводить числовые значения в массив , либо пока он не заполниться...

Аналог функции isalpha() (<cctype>) - C++
Здравствуйте) Я так понял, функция isalpha() не работает с русскими буквами(?), пришлось написать свою версию для работы с русскими...

Написать программу с использованием функции cct

Использование cctype - C++
1. Напишите программу, которая читает клавиатурный ввод до символа @ и повторяет его, за исключением десятичных цифр, преобразуя каждую...

Функции <cctype> - C++
Подскажите никак не пойму почему break в цикле не срабатывает (( Нужно вводить числовые значения в массив , либо пока он не заполниться...

Аналог функции isalpha() (<cctype>) - C++
Здравствуйте) Я так понял, функция isalpha() не работает с русскими буквами(?), пришлось написать свою версию для работы с русскими...

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


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

Или воспользуйтесь поиском по форуму:
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
asics
Freelance
Эксперт С++
2847 / 1784 / 144
Регистрация: 09.09.2010
Сообщений: 3,841
25.10.2010, 14:27 #2
кликни
1
fasked
Эксперт С++
4936 / 2516 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
25.10.2010, 14:30 #3
C
1
2
3
4
5
6
char string[] = "example";
char *ptr = &string[1];
 
if(isalpha(*ptr)) {
    // ...
}
1
Hardcore
4 / 4 / 0
Регистрация: 24.10.2010
Сообщений: 200
25.10.2010, 17:04  [ТС] #4
Можно пример по нагляднее?
0
Kastaneda
Форумчанин
Эксперт С++
4653 / 2862 / 228
Регистрация: 12.12.2009
Сообщений: 7,271
Записей в блоге: 2
Завершенные тесты: 1
25.10.2010, 17:07 #5
C++
1
2
3
4
5
6
char ch;
cin>>ch;
char* ptr=&ch;
if(isalpha(*ptr)){
// если ввели букву, то...
}
1
Hardcore
4 / 4 / 0
Регистрация: 24.10.2010
Сообщений: 200
25.10.2010, 17:10  [ТС] #6
а чтоб целое слово вывел надо его по циклу прогнать?
он у меня только одну букву выводит.
0
Kastaneda
Форумчанин
Эксперт С++
4653 / 2862 / 228
Регистрация: 12.12.2009
Сообщений: 7,271
Записей в блоге: 2
Завершенные тесты: 1
25.10.2010, 17:16 #7
Цитата Сообщение от Hardcore Посмотреть сообщение
он у меня только одну букву выводит.
Кто он?
Можно через указатель, если строка заканчивается символом '\0'
C++
1
cout<<ptr;
Добавлено через 23 секунды
выведет все слово.
0
Hardcore
4 / 4 / 0
Регистрация: 24.10.2010
Сообщений: 200
25.10.2010, 17:22  [ТС] #8
он это мой компилятор) условно .
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
using namespace std;
int main () {
    char ch;
cin>>ch;
char* ptr=&ch;
if(isalpha(*ptr)){
cout<<ptr;
}
return 0;
}
выводит это:
fgfg[]fgvh
f╠╠╠╠H■ Для продолжения нажмите любую клавишу . . .
0
Kastaneda
Форумчанин
Эксперт С++
4653 / 2862 / 228
Регистрация: 12.12.2009
Сообщений: 7,271
Записей в блоге: 2
Завершенные тесты: 1
25.10.2010, 17:53 #9
Странно, должен был вывести адрес! Так он букву не покажет, подобная конструкция работает только для строки:
C++
1
2
3
4
5
6
7
8
9
#include <iostream>
using namespace std;
int main () {
        char ch[80];
cin>>ch;
char* ptr=ch;
cout<<ptr;
return 0;
}
вот так выведет введенное слово.
0
Hardcore
4 / 4 / 0
Регистрация: 24.10.2010
Сообщений: 200
25.10.2010, 18:19  [ТС] #10
ввел это.
1234sdfghj[
вывел это.
1234sdfghj[
Для продолжения нажмите любую клавишу . . .
что то у тя не то.
0
Kastaneda
Форумчанин
Эксперт С++
4653 / 2862 / 228
Регистрация: 12.12.2009
Сообщений: 7,271
Записей в блоге: 2
Завершенные тесты: 1
25.10.2010, 18:22 #11
Цитата Сообщение от Hardcore Посмотреть сообщение
ввел это.
1234sdfghj[
вывел это.
1234sdfghj[
Для продолжения нажмите любую клавишу . . .
что то у тя не то.
Цитата Сообщение от Kastaneda Посмотреть сообщение
вот так выведет введенное слово.
и в чем тут не то?
0
Hardcore
4 / 4 / 0
Регистрация: 24.10.2010
Сообщений: 200
25.10.2010, 18:48  [ТС] #12
ты забыл isalpha;

Добавлено через 1 минуту
я забыл уточнить тебе. isalpha как фильтр. он должен оставить только буквы убрав всё остальное.
0
Kastaneda
Форумчанин
Эксперт С++
4653 / 2862 / 228
Регистрация: 12.12.2009
Сообщений: 7,271
Записей в блоге: 2
Завершенные тесты: 1
25.10.2010, 18:57 #13
Цитата Сообщение от Hardcore Посмотреть сообщение
я забыл уточнить тебе. isalpha как фильтр. он должен оставить только буквы убрав всё остальное.
Вот это поворот событий)))
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
using namespace std;
int main () {
char ch[80];
cin>>ch;
char* ptr=ch;
int len=strlen(ptr);
for(int i=0;i<len;i++)
   if(isalpha(ptr[i])){
      cout<<ptr[i];
}
cout<<endl;
system("pause");
return 0;
}
1
Hardcore
4 / 4 / 0
Регистрация: 24.10.2010
Сообщений: 200
25.10.2010, 19:13  [ТС] #14
Спасибо большое. А можно теперь с подробными коментами. Я тут всего не понял.
0
Kastaneda
Форумчанин
Эксперт С++
4653 / 2862 / 228
Регистрация: 12.12.2009
Сообщений: 7,271
Записей в блоге: 2
Завершенные тесты: 1
25.10.2010, 19:24 #15
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
using namespace std;
int main () {
char ch[80];// массив из 80 символов (байт)
cin>>ch;// вводим
char* ptr=ch;//создаем указатель на массив
int len=strlen(ptr);// len равна длине введенной строки (ф-ция strlen())
for(int i=0;i<len;i++)// перебираем все символы в строке
   if(isalpha(ptr[i])){// если символ - буква
      cout<<ptr[i];// выводим
}
cout<<endl;// переход на следующую строку
system("pause");//press any key
return 0;// ноль в виндовз, что б знал, что все в порядке
}
Добавлено через 1 минуту
и еще вот
0
Yandex
Объявления
25.10.2010, 19:24
Ответ Создать тему
Опции темы

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