![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Comparing signed and unsigned types
Gek1 © (2005-03-09 11:32:00)Есть строка, в которой 4 байта записаны в Hex виде (8 символов получаеться). Я же пытаюсь записать это значение в переменную DWord.
var a : DWord;
a := StrToInt('$'+copy(SHex,3,8));
Но StrtoInt - это для знаковых чисел, у меня же cardinal и он беззнаковый.
Ну и ясное дело компилятор выдает подсказку:
[Warning] ClassCharacter.pas(3667): W1023 Comparing signed and unsigned types - widened both operands
Глянул бы в справке, но у меня D2005 и к сожалению справка вся вырезана. (такой досталась :-( )
BiN (2005-03-09 14:05:00) [1]{$WARN COMBINING_SIGNED_UNSIGNED OFF}
...
{$WARN COMPARING_SIGNED_UNSIGNED ON}
Digitman (2005-03-09 13:45:00) [2]
> компилятор выдает подсказку
не ошибку же ..
подсказки (точнее - предупреждения, как в дан.случае) ты волен игнорировать, мол, спасибо, принял к сведению .. а чтобы не мозолили они глаза, выключи их нафих совсем соотв.опцией компилятора в настройках дан.проекта ... только потом не жалуйся, что компилятор перестанет тебя предупреждать о чем-то либо предупреждения выдаются любого типа либо подавляются компилятором в принципе
Gek1 (2005-03-09 12:01:00) [3]Помогло. Спасибо! :-)
Anton_K (2005-03-09 11:40:00) [4]a := Cardinal(StrToInt('$'+copy(SHex,3,8)));
?