读书人

怎么提取内存中的数字

发布时间: 2012-03-09 16:54:57 作者: rapoo

如何提取内存中的数字?
int a1,a2,a3,a4;

char buff[4]; //buff里面有4个数字字符,怎么把这4个字符放到 a1~a4 里?谢谢~



[解决办法]
sscanf/istringstream
[解决办法]
buff[4] 里面是一个ip信息,比如ip=222.70.57.228 的话,buff 里面就是 DE 46 39 E4
我想把他提取出来放到 a1~a4里, a1=222, a2=70, a3=57, a4=228 这样
==================
char buff[4]: buff[0]=222, 已经超过char的表示范围了.
用unsigned char buff[4]:

unsigned char buff[]={222,70,57,228};
int a1 = buff[0];
int a2 = buff[1];
int a3 = buff[2];
int a4 = buff[3];

即可.

[解决办法]
#include <iostream>
using namespace std;

void main()
{
int a[4];
char buff[4]={ '1 ', '2 ', '3 ', '4 '};
for(int i=0;i <4;++i)
{
a[i]=(int )(buff[i]- '0 ');
cout < <a[i] < <endl;
}
}
没问题目啊!

读书人网 >C++

热点推荐