字符串和数字的left 函数实现

21 篇文章 0 订阅
10 篇文章 0 订阅

    //this function returns  a  pointer to  a new string  取字符串的前n位

// consisting of  the  first n characters in  the  str string,

char * left( const char * str, int n)

{

      if ( n < 0 )

           n = 0;

       char *p = new char[ n+1 ];

       int i;

      for ( i = 0; i < n && str[i] ; ++i )

          p[i] = str [ i ];

      while (i <= n )

             p [ i++] = '\0' ;

        return 0;      

}

//   注意使用left 函数后用delete 来释放掉new 出来的内存。

//********************left 函数的重载

/  取整型数 num 的 前 ct 位数字

unsigned  long  left( unsigned  long  num,  unsigned ct )

unsigned  digitals = 1 ;

unsigned  long  n = num;

if ( ct == 0 || num == 0 )

return 0;

while( n/10 )    digitals++;

if ( digitals > ct )

 {   ct = digitals - ct ;

     while( ct - -)

         num/= 10;

        return num;

}

else   return  num;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值