How to convert 16 bit binary number to an Integer programatically

I would like to convert a 16bit Binary to an integer programatically. Below is the code that I am using. When I compile it I get an error: invalid conversion from 'int' to 'const char*'

Could someone please suggest where I could be going wrong ?

uint16_t Received_Bytes = 1011001111001101;
    int decimalValue = 0;
    for(int i = 16; i <=1; i++)
        {
        decimalValue += ((Received_Bytes>>(i-1)) & 1) * pow(2, (i-1));  // I believe error is in this line of code
        }
uint16_t Received_Bytes = 1011001111001101;

Did you mean uint16_t Received_Bytes = 0b1011001111001101; ?

 pow(2, (i-1)

An expensive and inaccurate substitute for a bit-shift operation.

Please, post your code.