指针用于将函数中形参的值传递给实参

来源:互联网 发布:oracle not like 优化 编辑:程序博客网 时间:2024/05/17 09:27

void Get_Value_2(unsigned int*data0,unsigned int *data1)

{

         //buf中数据长度

         unsignedshort buf_len = 0;

         //buf数据中值的位数

         unsignedshort buf_data_len = 0;

         unsignedshort buf_data_len_0 = 0;

         unsignedshort buf_data_len_1 = 0;

        

        

         unsignedchar i = 0;

        

         buf_len= Version_buf[2];

         buf_len<<= 8;

         buf_len|= Version_buf[1];

        

         buf_data_len= buf_len - 1 - 5;

        

         buf_data_len_0= 0;

         for(i= 0;i< buf_data_len;i++)

         {

                   if(Version_buf[8+i]!= 0x2C)

                            buf_data_len_0++;

                   else

                            break;

         }

         //总的长度减去逗号1个字符

         buf_data_len_1= buf_data_len - buf_data_len_0 - 1;

        

         *data0= 0;

         for(i= 0;i< buf_data_len_0;i++)

         {

                   *data0+= (Version_buf[8+i]-0x30)*pow(10,buf_data_len_0 - 1 -i);

         }

        

         *data1= 0;

         for(i= 0;i< buf_data_len_1;i++)

         {

                   *data1+= (Version_buf[8+buf_data_len_0+1+i]-0x30)*pow(10,buf_data_len_1 - 1 -i);

         }

}

 

 

妙哉。。。

因为不止一个参数,不能用return的方式返回。

同时,若用全局变量的方式,则只能用于传递同一组参数。若采用指针传递方式,则可实现传递两个参数,并具有通用性。。。

 

0 0