常用c语言函数

常用c语言函数,第1张

常用c语言函数

1、计算最大值和最小值

#define MAX( x, y ) ( ((x) > (y)) ? (x) : (y) )

#define MIN( x, y ) ( ((x) < (y)) ? (x) : (y) ) 
2、将一个字母转换为大写
#define CAPITAL( c ) ( ((c) >= 'a' && (c) <= 'z') ? ((c) - 0x20) : (c) ) 
3、获取数组元素个数
#define MY_SIZE( x ) ( sizeof( (x) ) / sizeof( (x[0]) ) )
4、将二进制字符串转化为十进制
static long bin_to_dec(const char *pbin)

{

 int ii=0;
 long result=0;

 while (pbin[ii] != 0) {
     result = result * 2 + (pbin[ii] - '0');
     ii++;
 }
 return result;
}
5、十进制转化为八进制
long dec_to_oct(long dec)

{

 int oct = 0, i = 0;
 i = 1;

 while (dec != 0){
     oct += (dec % 8) * i;
     dec /= 8;
     i *= 10;
 }
 return oct;
} 
6、十进制转化为二进制
long bec_to_bin(long n)

{

 long result=0,k=1,i,temp;
 temp = n;

 while(temp){
     i = temp%2;
     result = k * i + result;
     k = k*10;
     temp = temp/2;
 }
 printf("%ldn", result);
 return result;
} 
7、十六进制转十进制
long lv_atk_hex_to_dex(char*s)
{

 int i,t;
 long sum=0;

 for(i=0;s[i];i++)
 {

 if(s[i]>= '0'  &&s[i]<='9')
 {
           t=s[i]-'0';

 }

 if(s[i]>='a'&&s[i]<='z'){
           t=s[i]-'a'+10;
 }

 if(s[i]>='A'&&s[i]<='Z')

 {
           t=s[i]-'A'+10;
 }

       sum=sum*16+t;
 }

 return sum;
} 
8、八进制转十进制
long oct_to_dex(long n)

{

 int i=0,tmp,sum=0;
 while(n)
 {
       tmp=n%10;

       n=n/10;

       sum+=tmp*pow(8,i);

       i++;

 }

 printf("%d",sum);

 return sum;

} 
9、获取一个字的高位和地位
#define VALUE_L(x) ((byte) ((word)(x) & 255))

#define VALUE_H(x) ((byte) ((word)(x) >> 8)) 

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5714032.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-18
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)