bir byte dizisinin elemanlarında float tipinde bir değer oluşturma?

Başlatan rcpbrl, 15 Nisan 2016, 11:45:48

rcpbrl

 Merhaba arkadaşlar,
Bir sorum olacaktı, yadımcı olabilen olursa güzel olur. baya aradım taradım ama istediğim sonucu veren bir yöntem bulamadım.
Elimde Bir dizi var, 4 elemanlı bir byte dizisi, örnek: Buffer[4] = {1,2,3,4}; şeklinde benim bu dizide şu şekil de float bir değer elde etmem gerekiyor float x=1.234 bu diziyi kullanarak bu değere nasıl ulaşırım?

berkay_91

#include <stdio.h>
#include <string.h>
#include <cmath>
#include <conio.h>


int main(){

	char buffer[]={1,2,3,4};
	float x=0.0;

	for(int i=0; i<sizeof(buffer); i++)
		x+=buffer[i]*pow(10,sizeof(buffer)-1-i);

	x=x/(pow(10,sizeof(buffer)-1));
	printf("%.3f",x);

	getch();
	return 0;
}