简体   繁体   English

用C语言在Arm RVCT编译器上将double转换为int

[英]Convert double to int on Arm RVCT compiler in C language

I need to get last four bytes out of a double variable .The platform is Arm and compiler is RVCT.Programming language used is C.What is the safest way. 我需要从双精度变量中获取最后四个字节。平台是Arm,编译器是RVCT。使用的编程语言是C.最安全的方法是什么。

Thanks 谢谢

double dval = 3.14159;

// as an int
uint32_t ival = *(uint32_t*)&dval;

// as bytes
uint8_t *all_bytes = (uint8_t*)&dval;

uint8_t *last_four_bytes = all_bytes + 4;
int lastFour = *(((char*) &origDouble) + sizeof(double) - 4)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM