CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C++ Builder >  基础类

如何将字符串转换为十六进制的字符?

楼主wsf()2002-02-21 17:08:51 在 C++ Builder / 基础类 提问

如何将"123"(ansistring)转换为十六进制的两位字符?谢谢 问题点数:20、回复次数:11Top

1 楼BCB(天下三分明月夜,二分无赖是扬州)回复于 2002-02-21 17:14:01 得分 0

String   s="123";  
  int   i=s.ToIntDef(0);  
  char   buf[16];  
  sprintf(buf,"%02x",i);     //   #include   "stdio.h"  
  ShowMessage(buf);  
  Top

2 楼camel20(william)回复于 2002-02-21 17:22:31 得分 0

同意楼上的!Top

3 楼invalid(空心菜(Python是个好东东,大家多用用!))回复于 2002-02-21 17:42:46 得分 0

先把字符串转换成int型,然后用下面的任意一种方法把int型转换成字符串。  
   
  void   __fastcall   TForm1::BitBtn1Click(TObject   *Sender)  
  {  
          int   nValue   =   378;  
          Label1->Caption   =   IntToHex(nValue,8);   //0000017A  
  }  
  //---------------------------------------------------------------------------  
  void   __fastcall   TForm1::BitBtn2Click(TObject   *Sender)  
  {  
          int   nValue   =   452;  
          char   buf[40];  
          itoa(nValue,   buf,   16);     //   2   means   binary,   16   would   be   hex  
          Label1->Caption   =   buf;//1c4  
  }  
  //---------------------------------------------------------------------------  
  void   __fastcall   TForm1::BitBtn3Click(TObject   *Sender)  
  {  
  //   using   streams   to   display   a   number   in   hex.  
          int   nValue   =   452;  
          ostringstream   ostr;  
          ostr   <<   hex   <<   nValue;  
          Label1->Caption   =   ostr.str().c_str();//1c4  
  }  
  //---------------------------------------------------------------------------  
  void   __fastcall   TForm1::BitBtn4Click(TObject   *Sender)  
  {  
          //   using   sprintf   to   display   a   number   in   hex.  
          int   nValue   =   452;  
          char   buf[40];  
          sprintf(buf,   "%08X",   nValue);  
          Label1->Caption   =   buf;//000001C4  
  }  
  //---------------------------------------------------------------------------  
  void   __fastcall   TForm1::BitBtn5Click(TObject   *Sender)  
  {  
          //   using   AnsiString::sprintf   to   display   a   number   in   hex.  
          int   nValue   =   452;  
          AnsiString   str;  
          str.sprintf("%08x",   nValue);  
          Label1->Caption   =   str;//00001c4  
  }  
  Top

4 楼wsf()回复于 2002-02-22 13:25:56 得分 0

这个问题我已经完成拉,我想知道如何作类型强制转换,类似把结构型转换为字符串型.谢谢Top

5 楼kingcaiyao(aking)回复于 2002-02-22 13:49:21 得分 0

please   see   the   following   code:  
   
  we   assume   that   one   variable   named   caiyao   and   its   value   is   '9888'   or   'ABCDF'  
   
  void   __fastcall   TForm1::Button1Click(TObject   *Sender)  
  {  
          int   caiyao=9888;  
          String   S=String(IntToHex(caiyao,4));  
          MessageBox(NULL,S.c_str(),"how   are   you",MB_OK);  
  }  
   
  Top

6 楼wsf()回复于 2002-02-22 15:26:58 得分 0

转换我已经知道拉,我现在遇到一个新的问题:比如      
  struct   TTemp{  
        char   a[10];  
        char   b;  
  }  
   
  如何将此结构的变量值转换为str(ansistring)?Top

7 楼lyl_rabbit(阿牛)回复于 2002-02-22 15:50:05 得分 0

关注Top

8 楼zhangchao_7622(zhangchao_7622)回复于 2002-02-22 18:10:30 得分 0

关注Top

9 楼BCB(天下三分明月夜,二分无赖是扬州)回复于 2002-02-22 20:02:10 得分 20

struct   TTemp     x;  
      String   s=String((char   *)&x);  
  Top

10 楼BCB(天下三分明月夜,二分无赖是扬州)回复于 2002-02-22 20:03:44 得分 0

要强制转换?!  
   
      struct   TTemp   x;  
      AnsiString   s=(AnsiString   &)x;  
  Top

11 楼wsf()回复于 2002-02-22 21:49:31 得分 0

to   BCB谢谢,能留下您的email,今后多交流好吗?Top

相关问题

  • 字符串--->十六进制
  • 象 "d0c47c006" 似的字符串 ,如何转换成 十六进制?
  • IP字符串如"10.241.4.99"如何转换为十六进制6304f10a
  • 如何把十六进制转换成字符串(不用printf)?
  • 把字符串转换成十六进制的问题?
  • VB内字符串转换为十六进制数问题.
  • 如何把十六进制的数据转换为字符串
  • 关于字符串转换成十六进制的问题
  • 十六进制字符串转字符???
  • vb中我把字符串转换为十六进制数据,怎样再把十六进制数据转换为字符串呢。请达人帮助!

关键词

  • 转换
  • nvalue
  • 字符串
  • caiyao
  • ansistring
  • bitbtn
  • fastcall tform
  • buf
  • tobject
  • sprintf

得分解答快速导航

  • 帖主:wsf
  • BCB

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo