社区
网络及通讯开发
帖子详情
String型变量转为
likekite
2007-08-30 04:13:48
请教:
Edit框中有内容如:2000,我以写好函数将其转为16进制数,请问如何把这个16进制数赋给一个BYTE 型变量!
String a=IntToHex(OctToDec(Edit1->Text),2);
//OctToDec(Edit1->Text)八进制转为16进制
BYTE b=a;
按照上例 就是把0x400的值付给 b ,然后向串口发送。
这样报错,请高手指教。
没分了,惭愧!
...全文
123
11
打赏
收藏
String型变量转为
请教: Edit框中有内容如:2000,我以写好函数将其转为16进制数,请问如何把这个16进制数赋给一个BYTE 型变量! String a=IntToHex(OctToDec(Edit1->Text),2); //OctToDec(Edit1->Text)八进制转为16进制 BYTE b=a; 按照上例 就是把0x400的值付给 b ,然后向串口发送。 这样报错,请高手指教。 没分了,惭愧!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xjq2003
2007-08-31
打赏
举报
回复
如果是要传送不需要转的,如果需要显示那才需要转。
b=strtoint(a)/0x100;
sendchar(b);
b=strtoInt(a)&0xff;
sendchar(b);
至少要发送2次
constantine
2007-08-31
打赏
举报
回复
如果是要传送不需要转的,如果需要显示那才需要转。
likekite
2007-08-31
打赏
举报
回复
解释一下我那个八进制的由来:
因为我的PLC地址内容是八进制的,
如果想要读取里面的内容就需要将其转为16进制,由于8进制内容是 0x400,想要将其赋给Variant型变量,我以为只能通过BYTE,呵呵!
多谢芯火!^_^
likekite
2007-08-31
打赏
举报
回复
我是这样做的,给大家作参考:
String address=IntToHex(OctalToDec(Edit3->Text),4); //ÏÈ´«³ÉÊ®½øÖÆÊý,Ö±½Ó¸³¸øStringÐͱäÁ¿
String a1=address.SubString(1,2);
String a2=address.SubString(3,2);
ENQ=VarArrayCreate(OPENARRAY(int,(0,8)),varByte);
for(int i=0;i<8;i++)
{
if(i<3)
{
ENQ.PutElement(buffh[i],i);
}
if(i==3)
{
ENQ.PutElement(a1,i);
}
if(i==4)
{
ENQ.PutElement(a2,i);
}
if(i>=5)
{
ENQ.PutElement(buffq[i-5],i); //×¢ÒâBuffq[] ϱê
}
}
likekite
2007-08-31
打赏
举报
回复
我已经可以转为16进制数了,IntToHex(OctToDec(Edit1- >Text),2);
请问StrToHex 的功能是?
睿音
2007-08-31
打赏
举报
回复
再提示楼主一下 八进制转为16进制 这种东西是没意义的。在计算机中只有2进制。数制只是你在显示表示给使用者时的方式。就像 0xFF 可能是-1可能是255.
睿音
2007-08-31
打赏
举报
回复
用这个函数转化吧
int __fastcall TForm1::StrToHex(AnsiString getStr)
{
//TODO: Add your source code here
char desChar[2];
int des;
byte Hbit;
byte Lbit;
::memcpy(desChar,getStr.c_str(),2);
Hbit=desChar[0];
Lbit=desChar[1];
if(Hbit>=0x30 && Hbit<=0x39)
Hbit=Hbit-0x30;
else if(Hbit>=0x41 && Hbit<=0x46)
Hbit=Hbit-0x37;
else
return 256;
if (Lbit == '\0')
return Hbit;
else if(Lbit>=0x30 && Lbit<=0x39)
Lbit=Lbit-0x30;
else if(Lbit>=0x41 && Lbit<=0x46)
Lbit=Lbit-0x37;
else
return 256;
Hbit=Hbit<<4;
des=Hbit+Lbit;
return des;
}
睿音
2007-08-31
打赏
举报
回复
16进制的2000是要占2个字节的,我不知道你怎么想的非要放到一个BYTE 型变量中。肯定会溢出的。
C++之
string
类字符串连接
博客介绍了
string
类
变量
字符串连接方法,可用“+”或“+=”,但左边必须是
string
类字符串。还给出一个拼接错误示例,指出“bus/realstream”默认是char*
型
,处在等式最左导致错误,改正需将其
转为
string
类
变量
。
integer与
String
之间相互转化
本文介绍了Java中integer类
型
与
String
类
型
相互转换的方法。包括使用integer.to
String
()将integer
转为
String
,以及通过Integer.valueOf(
String
s)和Integer.parseInt(
String
s)将
String
转为
integer。这两种方法各有特点,前者返回integer对象,后者返回int
型
变量
。
loadrunner 脚本开发-int
型
变量
和字符串的相互转换
本文介绍了如何在脚本开发中实现字符串与int
型
变量
之间的相互转换,包括使用atoi函数将字符串
转为
整数,以及通过lr_save_int和lr_eval_
string
函数组合将整数
变量
转换成字符串形式。
4.25工作日记 --密码猜测三次 自动封IP
为编写防止密码猜测登陆的代码,需将同一用户连续三次输错密码的IP地址写入数据库。解决方法是用SESSION存储登陆失败次数,次数达3次执行数据操作。但session.setAttribute建立的是
STRING
型
,想
转为
INT
型
进行+1操作存在困惑。此外,因关闭IE后SESSION
变量
无效,考虑改用COOKIE。
java 如何将
string
赋值泛
型
变量
中
本文围绕Java中如何将
String
赋值给泛
型
变量
展开。先介绍泛
型
基础,强调其能增强代码可读性与可维护性。接着通过代码示例展示将
String
赋值给泛
型
变量
的方法,还介绍了泛
型
方法的使用。最后用类图说明泛
型
类和泛
型
方法的关系,凸显泛
型
在Java中的重要性。
网络及通讯开发
1,317
社区成员
8,874
社区内容
发帖
与我相关
我的任务
网络及通讯开发
C++ Builder 网络及通讯开发
复制链接
扫一扫
分享
社区描述
C++ Builder 网络及通讯开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章