Converter bytes para Int / uint em C

Eu tenho uma matriz de caracteres não assinados [248]; preenchido com bytes. Como 2F AF FF 00 EB AB CD EF ..... Este Array é o meu Byte Stream que eu armazeno meus dados do UART (RS232) como um buffer.

Agora eu quero converter os bytes de volta para o meu uint16 e int32.

Em c # eu usei a classe BitConverter para fazer isso. por exemplo:

byte[] Array = { 0A, AB, CD, 25 };
int myint1 = BitConverter.ToInt32(bytes, 0);
int myint2 = BitConverter.ToInt32(bytes, 4);
int myint3 = BitConverter.ToInt32(bytes, 8);
int myint4 = BitConverter.ToInt32(bytes, 12);
//...
enter code here
Console.WriteLine("int: {0}", myint1); //output Data...

Existe uma função similar em C? (no .net, eu uso o compilador KEIL porque o código está rodando em um microcontrolador)

Com cumprimentos Sam

questionAnswers(4)

yourAnswerToTheQuestion