Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.82/22: Рейтинг темы: голосов - 22, средняя оценка - 4.82
241 / 9 / 7
Регистрация: 27.08.2009
Сообщений: 868

Регистр букв

25.09.2009, 14:49. Показов 4531. Ответов 23
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
С консолью подружился, тут попробовал на билдере,использовать тот же консоль только с эдитами, и уже не работает.
Что я хочу сделать? Я хочу вводить в Эдит1 слово, при нажатии на кнопку, выдавать в Эдит 2 такой резульат. Если буква с маленькой заменить на большую, а если большая, заменить на маленькую. Например, я ввожу слово "Собака" в Edit1, при нажатии на батон1, получить в Edit2 слово "сОБАКА".


Пробывал,валять это в билдере, не получается.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
25.09.2009, 14:49
Ответы с готовыми решениями:

Регистр символов
Есть такой вопрос, допусти у нас имеется любое уравненик (к примеру 2х1-3х2=5) как сделать так, что бы при вводе такого уравнения в поле...

Edit и регистр
Доброе время суток!!! Столкнулся вот с такой проблемкой: есть Edit, в него дожны вводится даные так, чтобы первый символ был большой, а...

Нижний регистр в мемо
Вот возникла такая проблема. Не получается сделать текст в нижнем регистре. Вот пусть у меня есть строка 2x1-3x2; Я хочу чтобы цифры...

23
241 / 9 / 7
Регистрация: 27.08.2009
Сообщений: 868
25.09.2009, 18:18  [ТС]
Студворк — интернет-сервис помощи студентам
c_str(); - это функция преоброзования строки в символьный тип?
Вроде так как я хотел, но дело в том,что программ не компилится,если убрать unsigned,скомпилится, но при вводе "Я", в маленькую "я", не преобразует. Может подскажите,преобразователь в unsigned char?
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
26.09.2009, 14:00
вообще прототип функции выглядит так:
char* __fastcall c_str() const;

покажи свой код...
0
241 / 9 / 7
Регистрация: 27.08.2009
Сообщений: 868
26.09.2009, 14:20  [ТС]
Эта одна проблема. Ещё, программа работает только один раз, при вводе 2-ой раз в Эдит, слова, и нажатии кнопки батон, программа просто выводит всё то,что я ввёл в Эдит1, то и выводит в Эдит2 без изменения. Как решить проблемму с буквой "Я", чтоб при вводе её в Эдит1, при нажатии на батон , выводилась "я",с маленькой буквы в Эдит2?
Вот код:
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
//---------------------------------------------------------------------------
 
#include <vcl.h>
#pragma hdrstop
 
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::Button1Click(TObject *Sender)
{
char *p;
int i;
  p = Edit1->Text.c_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]);
  }
  Edit2->Text=p;
}
//---------------------------------------------------------------------------
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
26.09.2009, 15:40
Syltan, а можно вопрос - чем тебе мой код не угодил? и вообще зачем использовать указатели на строку, когда есть нормальный тип - строка? или это такое ваше пожелание? Ничего не делает твоя прога потому, что isupper и islower работает только с заморским языком...

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
char *p = new char[Edit1->Text.Length() + 1];
int i;
strcpy(p,Edit1->Text.c_str());
  for(i = 0; i < strlen(p); i++)
  {
    if((unsigned char)p[i] < 0xC0){ // çàìîðñêèé
      if(isupper(p[i]))
        p[i] = tolower(p[i]);
      else
        p[i] = toupper(p[i]);
    }else{ // ðóññêèé
      if((unsigned char)p[i] >= 0xC0 && (unsigned char)p[i] <= 0xDF)
        p[i] += 0x20;
      else
        p[i] -= 0x20;
    }
  }
  Edit2->Text=AnsiString(p);
  delete p;
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
26.09.2009, 15:40
Помогаю со студенческими работами здесь

Перевод TMemo в верхний регистр
по нажатию кнопки, текст из мемо1, должен быть преобразован в полностью верхний регистр, и выведен в мемо2. текст выводится, но без...

Перевод символов в нижний регистр
Немного не в тему, но почему не удается перевести в нижний регистр символы таким образом? for(int i=0;i&lt;str.Length();++i) ...

Перевести символ в верхний регистр
апишите функцию unsigned char ToUpper(unsigned char c) (C/C++), function ToUpper(c:char):char (Pascal), которая переводит данный символ в...

Буфер, ОЗУ, кэш, регистр процессора
Добрый день! Часто задаю вопросы на форуме в процессе изучения C/C++ и вот. Начал читать про трудности использования getchar() ...

Регистр букв
Уважаемые Программисты! очень прошу, помогите в идиотском вопросе дилетанта, век благодарен буду, великое дело спасёте, как...


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

Или воспользуйтесь поиском по форуму:
24
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru