CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

怎么把数组转换成整数?

楼主dogdogdog(狗狗)2003-12-02 17:52:48 在 VC/MFC / 基础类 提问

char   buffer[4];  
  int   code;  
   
  buffer是从二进制文件读进来的字符串数组。  
  想转换成int该怎么办? 问题点数:30、回复次数:11Top

1 楼badguy2002(风一样的男孩)回复于 2003-12-02 17:57:22 得分 0

atoi(buffer)Top

2 楼keiven()回复于 2003-12-02 18:49:41 得分 0

atoi(buffer)   ;Top

3 楼bonmarshal(蚂蚁)回复于 2003-12-02 18:49:48 得分 10

如果你的buffer的内容形如   buffer[4]   =   {"1","2","3","4"};  
  则用atoi(buffer)即可。  
  int   code   =   atoi   (buffer);  
  则   code=1234;  
   
  如果你的buffer的内容不是这个类型的则需要自己转换(如你所说的二进制文件读取,我认为你应用此法);  
   
  code   =   16777216*buffer[0]+65536*buffer[1]+256*buffer[2]+buffer[3];  
   
  Top

4 楼solarsoft(黑鹰)回复于 2003-12-02 18:56:25 得分 0

char   buffer[4];  
  int   code;  
  char*   p=buffer;  
  code=(int)*p++;  
  这样不知道可不可以Top

5 楼dogdogdog(狗狗)回复于 2003-12-03 10:32:12 得分 0

蚂蚁的办法可行。  
  就是计算量太大了。  
  有没有更简捷的办法呢?Top

6 楼timepalette(时间调色板)回复于 2003-12-03 12:07:01 得分 0

code   =   *(int   *)buffer  
   
  或code   =   ntohl(*(int   *)buffer);  
   
  看怎么定义了Top

7 楼flinming(flinming)回复于 2003-12-03 12:22:46 得分 0

atoiTop

8 楼checkyvc6(已所不欲,勿施于人)回复于 2003-12-03 12:48:32 得分 20

code   =   buffer[0]<<16   |   buffer[1]<<8   |   buffer[2]<<4   |   buffer[3];  
  这样应该不慢了吧Top

9 楼dogdogdog(狗狗)回复于 2003-12-03 13:25:42 得分 0

为什么打印出来的buffer[i]有时会出现许多fffff在前面。  
  例如,  
  TRACE("%x",buffer[0]);  
   
  如果值为B5的话,打印出来就是ffffffb5。  
   
  请问该怎么办?Top

10 楼weasea(尘一笑)回复于 2003-12-03 14:10:34 得分 0

mark一下Top

11 楼dogdogdog(狗狗)回复于 2003-12-03 14:14:28 得分 0

checkyvc6的想法很好,但是应该这样  
   
  code   =   buffer[0]<<24   |   buffer[1]<<16   |   buffer[2]<<8   |   buffer[3];  
   
  而且发现应该使用   unsigned   charTop

相关问题

  • 怎么将一个整数转换为以各固定长度的字节数组?
  • 在C++里怎么把char数组转换成byte数组
  • 数组转换成string怎么搞?
  • 数组 转换...
  • 怎么样将string转换为byte数组和byte数组转换为string?
  • 将一串整数分割成单个整数数组,怎么做较快?
  • 如何将整数1001转换成16进制分别存入一个数组(byte型)?
  • VC里怎么把一个字符串转换为数组
  • VARIANT怎么转换成字符串数组?
  • 帮忙这段数怎么转换为数组

关键词

  • 转换
  • code
  • buffer
  • char

得分解答快速导航

  • 帖主:dogdogdog
  • bonmarshal
  • checkyvc6

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

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