728x90
반응형
이건 내가 짠 건 아니고, stackoverflow에서 가져온 코드다.
실수형 값을 ascii로 바꿔주는 함수, 임베디드 환경에서도 잘 돌아간다.
void floatToAscii(uint8_t* p, float x) // void floatToAscii(char* p, float x)
{
int n,i=0,k=0;
n=(int)x;
while(n>0)
{
x/=10;
n=(int)x;
i++;
}
*(p+i) = '.';
x *= 10;
n = (int)x;
x = x-n;
while((n>0)||(i>k))
{
if(k == i)
k++;
*(p+k)='0'+n;
x *= 10;
n = (int)x;
x = x-n;
k++;
}
/* Null-terminated string */
*(p+k) = '\0';
}
그대로 가져다 쓰면 된다. 나 같은 경우는 char형으로 안 바꾸고 uint8_t 형으로 변환하기 위해 매개변수를 uint8_t 형으로 바꿨다.
- 끝 -
728x90
반응형
'Programming language > C' 카테고리의 다른 글
[C] C언어, double to ascii, serial 통신에서 데이터 변환 (0) | 2022.12.30 |
---|---|
[C] C 에서 typeof, typeof 란? C언어 typeof (0) | 2022.11.23 |
[C] 포인터, C 포인터, C Pointer, 포인터 활용하기 - 1 (0) | 2022.09.03 |
[C] sscanf, C언어 sscanf, sscanf 함수, sscanf 사용법 (0) | 2022.08.31 |
[C] memcpy, C언어 memcpy, memcpy 함수 (0) | 2022.08.31 |