var
Order : byte;
i : integer;
begin
i := StrToInt(edit1.Text);
Order := $10;
end;
s := byte($10)或s:=$10;可以表示16进制的10,可我要动态的表示呢?就是认为动态传过来的i是16进制数,$i编译过不去,$ + i其实就是i。
到底该怎么表示?
Order : byte;
i : integer;
begin
i := StrToInt(edit1.Text);
Order := $10;
end;
s := byte($10)或s:=$10;可以表示16进制的10,可我要动态的表示呢?就是认为动态传过来的i是16进制数,$i编译过不去,$ + i其实就是i。
到底该怎么表示?
解决方案 »
- CSDN BLOG页面错误
- 图像视频学习?
- Package使用问题
- 皮肤技术,界面不错。值得学习...
- 怎样读出在DBGrid中选择的多条记录!高手请进
- 急急急!!我想在前台用一个ADOStoredProc1在不同时间连接后台多个存储过程,在前台应怎么动态设置Paramerters??
- 这种算法怎么写:从一个字符串里,每隔两个取一个字符:比如:str:='abcdefgh',那么取出来的是:'ab','cd','ef','gh'
- 关于位操作!
- ???一个让我痛苦已久的问题,望各路高手鼎立相助!!![关于close,请写源代码,举例说明,否则不给分;其实很简单,但我是菜鸟]
- 搞了一天也没解决,上来请教
- 还是DES算法问题
- <<笑话>>
var
i:integer;
strhex:string;
begin
strhex:=edit1.text;
i:=strtoint('$'+strhex);
...
所谓16进制还是10进制仅仅是字面常量的表现形式而已,到了内部还不都是二进制?
只是输出时需要转化为人能看得懂的文字,比如表示一个10进制或16进制的数的一串字符
转化为10进制用再熟悉不过的IntToStr,或者WriteLn之类也有类似功能
转化为16进制用StrToHex(值,位数),两个参数都是整型,后者表示按16进制输出时至少有几位数字,就是说数值不够指定位数时前面补足'0'.