现在有char str[8]="11001100"
怎么转换为数组然后进行十进制转换啊😭
#include <math.h>
#include <stdio.h>
int main()
{
char str[9]="11001100";
int sum=0;
int count=0;
for(int i=strlen(str)-1;i>=0;--i)
{
if(str[i]=='1'){
sum += pow(2,count);
}
++count;
}
printf("%d\n",sum);
return 0;
}
str 本身就是数组,所以无需转化
转10进制就用到移位来操作
char str[9]="11001100"
char dec = 0;
for(int i=0;i<8;i++)
{
if(str[i] == '1') dec |= 0x01;
dec<<=1;
}
//dec就是转化出来的10进制