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

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

Войти
Регистрация
Восстановить пароль
 
Виталий5
6 / 6 / 1
Регистрация: 15.06.2013
Сообщений: 69
#1

Буква из нижнего регистра в верхний - C++

19.07.2013, 12:49. Просмотров 748. Ответов 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
32
33
34
35
36
37
38
39
40
41
42
43
#include <windows.h>
 
#include <iostream>
using std::cout;
using std::cin;
using std::endl;
 
#include <cctype>
using std::islower;
using std::toupper;
 
 
void convert( char * );
 
void main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
 
 
    char phrase[] = "my name";
 
    cout << "Before: " << phrase;
 
    convert( phrase );
 
    cout << "\n\nAfter: " << phrase;
 
 
    cout << endl;
    system("pause");
}
 
void xonvert( char *sPtr )
{
    while ( *sPtr != '\0' )
    {
        if ( islower( *sPtr ) )
            *sPtr = toupper ( *sPtr );
 
        sPtr++; 
    }
}
Компилятор ругается :error LNK2019: ссылка на неразрешенный внешний символ "void __cdecl convert(char *)" (?convert@@YAXPAD@Z) в функции _main C:\Users\Vitaliy\Documents\Visual Studio 2012\Projects\Дейтел\Дейтел\Упражнения\Упражнения.obj


Пример из учебника Дейтел 8 глава, где же ошибка?(

Добавлено через 1 минуту
ой как нехорошо получилось, написал и нашел глупую ошибку((
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.07.2013, 12:49
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Буква из нижнего регистра в верхний (C++):

Символы из нижнего регистра перевести в верхний - C++
Приветствую. Нужно символы из нижнего регистра перевести в верхний. Вот сама программа (которую можно не смотреть): #include...

как перевести букву из нижнего регистра в верхний C++ - C++
Например: Введите букву: g Та же буква в верхнем регистре: G Желательно с пояснением) и 2 вопрос, а с русскими можно?

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

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

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

В новом файле заменить все латинские буквы верхнего регистра на буквы нижнего регистра - C++
9. В новом файле заменить все латинские буквы верхнего регистра на буквы нижнего регистра. help

5
0x10
2475 / 1648 / 247
Регистрация: 24.11.2012
Сообщений: 4,069
19.07.2013, 12:50 #2
Цитата Сообщение от Виталий5 Посмотреть сообщение
void convert( char * );
Цитата Сообщение от Виталий5 Посмотреть сообщение
void xonvert( char *sPtr )
Очепятка
1
Kordn
156 / 135 / 35
Регистрация: 18.05.2013
Сообщений: 289
19.07.2013, 12:50 #3
Цитата Сообщение от Виталий5 Посмотреть сообщение
void xonvert( char *sPtr )
Не xonvert, а convert!
1
Виталий5
6 / 6 / 1
Регистрация: 15.06.2013
Сообщений: 69
19.07.2013, 12:50  [ТС] #4
Спасибо, увидел)
0
Kordn
156 / 135 / 35
Регистрация: 18.05.2013
Сообщений: 289
19.07.2013, 12:52 #5
Виталий5, со всеми бывает
Удачи!
1
Виталий5
6 / 6 / 1
Регистрация: 15.06.2013
Сообщений: 69
19.07.2013, 13:12  [ТС] #6
Развиваю тему, программа переделывает в верхний регистр первую букву каждого слова:

как изменить регистр у первой буквы предложения?

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
32
33
34
35
36
37
38
39
40
41
42
#include <windows.h>
#include <iostream>
using std::cout;
using std::cin;
using std::endl;
 
#include <cctype>
using std::islower;
using std::toupper;
 
void convert( char * );
 
void main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
 
 
    char phrase[] = "my name is vitaliy";
 
 
    cout << "Before: " << phrase;
 
    convert( phrase );
 
    cout << "\n\nAfter: " << phrase;
 
 
    cout << endl;
    system("pause");
}
 
void convert( char *sPtr )
{
    while ( *sPtr != '\0' )
    {
        if ( islower( *sPtr )  && ( *( sPtr - 1 )  == ' ' ) )
            *sPtr = toupper ( *sPtr );
 
        sPtr++; 
    }
}
Добавлено через 58 секунд
Before: my name is vitaliy

After: my Name Is Vitaliy
Для продолжения нажмите любую клавишу . . .

Добавлено через 8 минут
Вроде бы не плохо получилось:
C++
1
2
3
4
5
6
7
8
9
10
11
12
void convert( char *sPtr )
{
    *sPtr = toupper( *sPtr );
 
    while ( *sPtr != '\0' )
    {
        if ( islower( *sPtr )  && ( *( sPtr - 1 )  == ' ' ) )
            *sPtr = toupper ( *sPtr );
 
        sPtr++; 
    }
}
Подскажите, а с кириллицей можно провернуть такую работу? попробовал написать :
char phrase[] = "меня зовут виталий";
Как-то не захотел компилятор менять регистр.
0
19.07.2013, 13:12
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.07.2013, 13:12
Привет! Вот еще темы с ответами:

Функция преобразует буквы верхнего регистра в строке s в буквы нижнего регистра - C++
Задание: strlwr char *strlwr( char *s); Функция преобразует буквы верхнего регистра в строке s в буквы нижнего регистра. P.S....

Заменить все буквы нижнего регистра в строке на буквы верхнего регистра - C++
Определить функцию, заменяющую все буквы нижнего регистра в строке на буквы верхнего регистра.

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

Движение по шахматной доске коня (с левого нижнего угла в верхний правый угол) - C++
Шахматная фигура «конь» перемещается на 1 клетку по горизонтали и на 2 клетки по вертикали или на 2 клетки по горизонтали и 1 - по...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

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