C细节

今天写一个二进制转10进制的函数,又被C语言的优先级给忽悠了一把,以为移位运算符优先级应该和乘除运算符一样,高于加减运算符,结果悲剧了。恩,估计这个函数以后可能会用到,保存下来:

// =================================================== // 8位二进制字符数组转十进制数 // 注意:字符数组必须是8位二进制ASCII形式 // =================================================== byte Binary_Num(char *str) { byte i,num; i = 0; num = 0; while(i < 8) { num = (num << 1) + (*(str+i) - '0'); i++; } return num; }

 

你可能感兴趣的:(c,语言,byte)