怎么由二进制ASCII码(010101)得到相应的字符

如何由二进制ASCII码(010101)得到相应的字符

需求:有时在通信方面的一些工程,接收端接收到的往往是字符信息的ASCII码(0101)的东西,这串东西存到一个int型数组中(int a[7]),这个时候怎么解析相应的字符呢?

答案:

#include <stdio.h>

#include <math.h>


int main()
{           //0 1 2 3 4 5 6
int a[7]={0,0,0,0,1,1,0}; //"0"的ASCII码,注意倒序
int i; //循环变量


//打印ASCII码
for(i=6; i>=0; i--)
printf("a[%d]=%d   ",i,a[i]);
printf("\n");


//计算ASCII码的十进制的值
int sum=0;
for(i=6; i>=0; i--)
sum+=a[i] * pow(2 * a[i],i);

printf("%d--->%c   ",sum,sum); //分别输出十进制ASCII码和相应的字符


return 0;
}