Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.81/37: Рейтинг темы: голосов - 37, средняя оценка - 4.81
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1

Имена переменных - кириллицей

15.08.2011, 04:24. Показов 7244. Ответов 25
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Все мы хорошо знакомы с правилами формирования имен в Delphi, среди которых есть и такое – имя пишется в одно слово, если пробел все же необходим, он заменяется символом нижнего подчеркивания "_".
...
Тут надо вспомнить, что у нас есть 2 типа пробелов – обычный (с кодом 32) и неразрывный (с кодом 160). Однако старые версии компилятора, работающие с ANSI, не делают между ними различий, считая и тот и другой пробел обычным. Но все изменилось с пришествием Unicode! Теперь эти пробелы не отождествляются (я проверил это в Delphi XE), и неразрывный пробел может являться частью имени. А если вспомнить, что в Unicode мы можем давать переменным имена на любом языке (включая русский), перед нами открываются новые горизонты в оформлении исходного кода!
И я проверил:
C++
1
2
3
4
5
6
void __fastcall TForm1::Button1Click(TObject *Sender)
{
  AnsiString Мое*Сообщение;
  Мое*Сообщение = "Имя переменной - кириллицей!";
  ShowMessage(Мое*Сообщение);
}
Переменную пишем так:
Мое(зажимаем ALT и набираем на цифровой клавиатуре 0160 , отпускаем ALT)Сообщение
Обратите внимание - не 160 , как советует автор, а 0160.
Судя по всему, это должно работать не только в RAD XE, но и в RAD 2009-RAD 2010.

Представляю, какой кайф испытают программисты, не планирующие изучать англицкий язык . Да и вообще, вдохновляет :dance3: .
Хотя есть опасение, что RAD может превратиться в .

Источник: Что в имени тебе моем?
Ссылка по теме: Кириллица в именах переменных и функций

И не надо мне говорить, что вы это давно используете .


Результат:
Миниатюры
Имена переменных - кириллицей  
5
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.08.2011, 04:24
Ответы с готовыми решениями:

Имена функций с использованием переменных
Вопрос: у меня есть объекты называемые (Label1, Label2, Label3...), и нужно по нажатию на кнопку, чтобы их названия менялись. Понятное...

Рассмотреть программу, написать имена глобальных переменных, локальных переменных, формальных параметров
Program P1; var s:string; procedure P(var s:string) ; var i, j : integer; aux: char; ...

Как исправить вывод переменных с кириллицей?
Установлен Denwer на win для опытов с php Кириллические строки вида: echo 'куку</br>'; и $kuku = 'куку'; echo $kuku; ...

25
Эксперт С++
 Аватар для Avazart
8484 / 6151 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
18.08.2011, 00:09
Студворк — интернет-сервис помощи студентам
Пашет, поду под подушку пробельчик заховаю
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
18.08.2011, 00:19  [ТС]
ну да, нужная в хозяйстве вещь
0
Прогер
 Аватар для Programmer.
632 / 263 / 15
Регистрация: 17.11.2010
Сообщений: 1,371
Записей в блоге: 2
18.08.2011, 04:36
Цитата Сообщение от LK Посмотреть сообщение
В архиве - неразрывный пробел . Попробуй скопировать его и вставлять .
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
18.08.2011, 04:55  [ТС]
Там действительно неразрывный пробел:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
 
#include "UnBreakSpace.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm2 *Form2;
//---------------------------------------------------------------------------
__fastcall TForm2::TForm2(TComponent* Owner)
    : TForm(Owner)
{
"Здесь--->*<--неразрывный пробел. Попробуй скопировать его и вставлять :) ."
}
//---------------------------------------------------------------------------
, как бы странно это не звучало



Каха, а на родном не пробовал ? Интересно ... Ведь там по-умолчанию - юникод.
1
 Аватар для QVO
652 / 462 / 80
Регистрация: 26.10.2010
Сообщений: 1,263
Записей в блоге: 4
07.09.2011, 21:26
LK, спасибо LK. Пошучу над преподавателями от души

Добавлено через 13 минут
Может написать программу с хуком. Будет вместо обычного пробела вставлять 0160 при нажатие на кнопку пробел.
0
 Аватар для snake32
3504 / 1687 / 236
Регистрация: 26.02.2009
Сообщений: 8,417
Записей в блоге: 6
28.04.2012, 13:50
Не хочу вас огорчать, но у меня даже на XE2 поиск(Ctrl+Shift+F) по русским символам не работает, если файл модуля не открыт в проекте. Отсюда следует либо открывать все модули(а если их более 100?) либо писать всё на ангельском. Может кто-то знает как исправить этот баг?

Добавлено через 45 секунд
Сами понимаете без поиска большие проекты загнутся
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
28.04.2012, 13:50
Помогаю со студенческими работами здесь

Имена переменных
Можно создавать переменные с программно задаваемым именем? Например, For i=1 to 10 Dim perem &amp; &quot;i&quot; As String Next

Имена переменных
Можно создавать переменные с программно задаваемым именем? Например, For i=1 to 10 Dim perem &amp; &quot;i&quot; As String Next

В чем ошибка?) Имена переменных
Я только учусь) Програмка перепечатаная с книги, но в визуал студио 2008 я ловлю ошибку) #include &lt;stdio.h&gt; #include...

Имена переменных русскими словами
Попробовал объявить переменную русским словом, присвоить значение и напечатать. Всё получилось. А почему в учебниках пишут, что можно...

Имена переменных с символом доллара ($)
Полистал Страуструпа. Выискал: И как пример приведено вот это: И для интереса посмотреть, что скажет на это компилятор VS...


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

Или воспользуйтесь поиском по форуму:
26
Ответ Создать тему
Новые блоги и статьи
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
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
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами 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 из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru