I must not understand a fundamental concept here. Perhaps someone can point me in the right direction.
{$mode Delphi} //Delphi or objfpc same results program hextest; // or why can't I trap an exception? uses Sysutils,strutils; var b:byte; hex:string; begin Write('Enter a hex String: '); ReadLn(hex); Try b:=Hex2Dec(Hex); Except On EConvertError do Begin WriteLn(hex,' is not a valid hex number! Terminating...'); Halt end end; WriteLn('Hex value ',hex,' is decimal value: ',b) end. Upon execution: $ ./hextest Enter a hex String: 0A Hex value 0A is decimal value: 10 Cool! $ ./hextest Enter a hex String: FF Hex value FF is decimal value: 255 Still Cool! $ ./hextest Enter a hex String: ZZ Hex value ZZ is decimal value: 0 Certainly NOT cool! According to the docs on function "Hex2Dec" in Strutils: "If S does not contain a valid hexadecimal value, an EConvertError exception will be raised." So, what profound lack of understanding am I suffering from? Anybody? Bob _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal