Форум: "Основная";
Текущий архив: 2004.10.17;
Скачать: [xml.tar.bz2];
ВнизКонвертация String[4] в Integer Найти похожие ветки
← →
BorH (2004-09-30 13:03) [0]Здравствуйте.
Подскажите, как конвентировать один тип в другой. Заметьте, не перевести число 12451 в "12451", а вот так:
12451
в 16-ричной системе: 000030A3 - integer из 4 байт
Str = $00+$00+$30+$A3
Должна получиться четырёхбайтная строка, но в одно действие.
Т. е. просто блоку данных присваваем другой тип.
Помнится, раньше я делал так:
var
Int: integer;
Str: string;
begin
Int:= 12451;
Str:= String(Int);
end;
Сейчас же появляется сообщение об ошибке.
Сорри за неточную формулировку :)
Заранее благодарю.
← →
DiamondShark © (2004-09-30 13:10) [1]var
S: string[4];
R: packed record
L: byte;
I: integer;
end absolute S;
begin
R.L := 4;
R.I := 12345;
end;
← →
pasha_golub © (2004-09-30 13:31) [2]DiamondShark © (30.09.04 13:10) [1]
Элегантно, блин...
← →
Суслик © (2004-09-30 14:13) [3]
> [1] DiamondShark © (30.09.04 13:10)
А порядок байт?
Автору обратный нужен.
Имхо.
← →
pasha_golub © (2004-09-30 15:20) [4]Суслик © (30.09.04 14:13) [3]
Я думаю, автору можно что-нибудь и самому сделать. :)
← →
Суслик © (2004-09-30 15:22) [5]
> [4] pasha_golub © (30.09.04 15:20)
я не помню, что в паскале значило string(i), где i - integer.
Но есть ощущение, что у автора противоречие в примере.
Если я прав, то решение не элегантное, а просто не верное.
← →
GuAV © (2004-09-30 17:01) [6]string в паскале (shortstring)
+-------+-----------+-----------+- -+---------------+-----+----------------+
| длина | символ[1] | символ[2] | ... | символ[длина] | ... | символ[размер] |
+-------+-----------+-----------+- -+---------------+-----+----------------+
| 0 | 1 | 2 | ...
+-------+-----------+-----------+-
string в дельфи (ansistring) -+---------------+
| указатель |
+---+---+---+---+
| 0 | 1 | 2 | 3 |
+---+---+---+---+
указывает на:+---------------+---------------+-----------+-----------+---------------+----+
| счет ссылок | длина | символ[1] | символ[2] | символ[длина] | #0 |
+---+---+---+---+---+---+---+---+-----------+-----------+---------------+----+
|-8 |-7 |-6 |-5 |-4 |-3 |-2 |-1 | 0 | 1 | ...
+---+---+---+---+---+---+---+---+-----------+-----------+-
string(integer) - для pascalевской не имеет смысла, для дельфовской - даже опасно.
используйте массив символов
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.10.17;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.035 c