急!!!!!!!!!如何在VC++6中将DB文件中包含的2进制数据转化成10进制数据!

来源:百度知道 编辑:UC知道 时间:2024/06/17 21:09:23
如何在VC++6中将DB文件中包含的2进制数据转化成10进制数据!
DB文件打开了,但是数据是2进制的,我需要将这一系列的2进制数据转化成熟悉的10进制数据!
我还是不大懂你所说的意思,VC我也不通,网站上浏览说VC可以打开DB文件的,但是我到底还是不知道怎么转化!

用一个数组来存放每次除 2 所得的余数,然后从数组中反向取出各位余数,考虑到只需要转换 3 为十进制数,由于 999 的二进制是 1111100111 那么使用一个长度为 10 位的数组即可。具体如下:

// 用 C 语言实现
#include<stdio.h>
#define N 10

int main()
{
int a [N]; // 存放二进制位的数组
int rhs, i; // rhs 存放输入的数, i 存放二进制数的位数
printf("请输入一个三位十进制数字:\n");
scanf("%d", &rhs);

for( i = 0; rhs != 0; rhs = rhs / 2, ++i) // 进行进制转换
a[i] = rhs % 2;

printf("转换的二进制数如下:\n");

for( --i; i >= 0 ; --i ) // 反向输出各位余数即得所转换的二进制数
printf("%d",a[i]);

printf("\n\n");
return 0;
}

PS: 此代码只能转换1000以内的数,输入数据时切记别超过1000(也就是别超过3位数)。

直接读出来就是了,比如一个double类型的数写到文件里后就是二进制的了,当你读出来后就是十进制的双精度型数据了.
double a=10;
fp.wite(&a,8);//2进制写进文件,
double b;
fp.read(&b,8);
读完后b=10;为十进制的.

直接用一个int变量读出来就可以了啊。。

我也很想知道这个问题