5 / 5 / 0
Регистрация: 18.06.2009
Сообщений: 124
1

Как перевести переменную типа String в виртуальные коды символов которые находятся в переменной?

08.07.2010, 01:11. Показов 3695. Ответов 12
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Казалось бы задача простоя... но я что-то не допру ....
Кстате, желательно чтобы виртуальные коды были в 16-й системе счисления.
Благодарю за внимание!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.07.2010, 01:11
Ответы с готовыми решениями:

Как сравнить переменную типа String с переменной типа Int?
Как сравнить переменную типа String с переменной типа Int в конструкции "if"???

Как конвертировать переменную типа Double в переменную типа String?
Как конвертировать переменную типа Double в переменную типа String. И наоборот.

Запись первых двух символов в переменной string в другую переменную
Есть переменая типа string s = "12345678"; Мне нужно первые два символа присвоить другой переменой...

Используя указатель на переменную типа string, удалить последний символ этой переменной
есть указатель на переменную string,нужно удалить последний символ этой переменной работая с...

12
420 / 417 / 79
Регистрация: 21.06.2010
Сообщений: 1,362
08.07.2010, 04:30 2
Цитата Сообщение от X-LEV-X Посмотреть сообщение
виртуальные коды
а что вы под этим понимаете???
1
103 / 74 / 10
Регистрация: 29.05.2010
Сообщений: 192
08.07.2010, 09:52 3
Ну как я понимаю это достигается функцией Ord(C: Char): Integer; - возвращает номер символа в кодовой таблице
1
Почетный модератор
64304 / 47599 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
08.07.2010, 10:16 4
-LeV-, Виртуальные коды это другое.
0
5 / 5 / 0
Регистрация: 18.06.2009
Сообщений: 124
08.07.2010, 16:27  [ТС] 5
Цитата Сообщение от Vas-e-na Посмотреть сообщение
а что вы под этим понимаете???
Объясню на примере. буква 'q' (или Q) имеет код 81 - помойму это и есть виртуальный код...
0
873 / 544 / 117
Регистрация: 24.11.2009
Сообщений: 1,329
08.07.2010, 16:36 6
Виртуальные коды
VK_A 41 A key

VK_B 42 B key

VK_C 43 C key

VK_D 44 D key

VK_E 45 E key

VK_F 46 F key

VK_G 47 G key

VK_H 48 H key

VK_I 49 I key

VK_J 4A J key

VK_K 4B K key

VK_L 4C L key

VK_M 4D M key

VK_N 4E N key

VK_O 4F O key

VK_P 50 P key

VK_Q 51 Q key

а Ord это вот
Функция Ord возвращает целочисленное значение для любого перечислимого типа Arg.

Это используется преимущественно, чтобы преобразовать символы или перечисления в их числовые эквиваленты.
Delphi
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
var
  A   : AnsiChar;
  C   : Char;
  W   : WideChar;
  E   : Boolean;
  I   : Integer;
  I64 : Int64;
 
begin
  // Присвоение значений перечислимых типов
  A   := 'A';
  C   := 'C';
  W   := 'W';
  E   := True;
  I   := 22;
  I64 := 64;
 
  // Показ каждого значения
  ShowMessage('A = '+IntToStr(Ord(A)));
  ShowMessage('C = '+IntToStr(Ord(C)));
  ShowMessage('W = '+IntToStr(Ord(W)));
  ShowMessage('E = '+IntToStr(Ord(E)));
  ShowMessage('I = '+IntToStr(Ord(I)));
  ShowMessage('I64 = '+IntToStr(Ord(I64)));
end;
A = 65
C = 67
W = 87
E = 1
I = 22
I64 = 64
1
Retired
7727 / 2559 / 671
Регистрация: 17.10.2009
Сообщений: 5,100
08.07.2010, 16:38 7
Объясню на примере. буква 'q' (или Q) имеет код 81 - помойму это и есть виртуальный код...
Виртуальные коды есть у клавиш, а тебе нужен, как я понял, просто ASCII код. Получать их нужно как ты правильно указал функцией Ord(), а тем с переводами числа из 10 СС в 16 СС было очень много, поэтому ищи.

p.s. ASCII код 'q' отличается от кода 'Q'.
1
Почетный модератор
64304 / 47599 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
08.07.2010, 16:46 8
Поскольку раздел Делфи, то скорее ANSI, нежели ASCII.
Вот интересная табличка в СС16.
http://microsin.ru/content/view/652/43/
1
5 / 5 / 0
Регистрация: 18.06.2009
Сообщений: 124
08.07.2010, 19:14  [ТС] 9
Всем спасибо !!!

Добавлено через 1 минуту
PS:
Мне это нужно для регистрации программы...

Добавлено через 13 минут
igoriy... Вы мне подсказали как перевести БУКВУ, а у меня строка... Т.е. мне нужно перевести строку в Edit'e в число...

Добавлено через 28 секунд
igoriy... Вы мне подсказали как перевести БУКВУ, а у меня строка... Т.е. мне нужно перевести строку в Edit'e в число...
0
Retired
7727 / 2559 / 671
Регистрация: 17.10.2009
Сообщений: 5,100
08.07.2010, 19:22 10
X-LEV-X, ну а что тебе мешает пройтись по строке посимвольно ?
0
103 / 74 / 10
Регистрация: 29.05.2010
Сообщений: 192
08.07.2010, 19:27 11
Ну а в чем проблема?

Delphi
1
2
3
4
5
6
var
mas: array of integer;
begin
SetLength(mas,Length(Edit1.Text));
for i:= 0 to Length(Edit1.Text) - 1 do
mas[i]:= Ord(Edit1.Text[i+1]);
Как-то так. При желании можно писать не в массив, а куда нибудь еще
1
5 / 5 / 0
Регистрация: 18.06.2009
Сообщений: 124
09.07.2010, 22:00  [ТС] 12
А как перевести назад? т.е. ANSII код в символ??
Пытался так (но в итоге был хлам в переменной, а не то, что должно быть):
Str[1] := Char(81)
Может есть функция для перевода?
0
Эксперт С++
476 / 444 / 34
Регистрация: 20.11.2009
Сообщений: 1,293
09.07.2010, 22:04 13
Функция называется chr.
1
09.07.2010, 22:04
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.07.2010, 22:04
Помогаю со студенческими работами здесь

Максимальное количество символов в переменной типа string
Здравствуйте. Есть приложение, в котором происходит обработка порядка 10-20к символов. В...

Считать в переменную типа string определенное количество символов из потока ввода
Подскажите, пожалуйста, есть ли такая функция или что, чтобы я мог считать в переменную типа string...

Как строковую переменную(String) сканвертировать в переменную типа(Real)
У меня есть Edit1.Text (строковая) а var x: Real каким образом мне сконвертировать Edit1.Text в...

Как передать из ACCESS переменную STRING в переменную окружения (типа CMD команды SET=)
Добрый день! Подскажите как установить переменную окружения из ACCESS. Допустим у меня есть...


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

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

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