1、定义int sprintf(char *str, const char *format, ...)

        1、paras:*str:目标字符串首指针

 *format:要写入目标字符串的数据

...:写入目标字符串数据中被转换的变量

        2、对于*format的说明:

属性:%[flags][width][.precision][length]specifier

举例:3.1f       浮点型,宽度为3,保留一位小数

详见参考:C 库函数 - sprintf()

        3、使用例:

float x = 3.141;
unsigned char buffer[10]
sprintf(buffer, "x= %3.1f", x);

结果:>>"x=     3.1"

2、union的作用:

惭愧没好好学C语言,只知道struct,看到union顿时陌生,不过短暂了解以后发现union在很多地方都相当常用

1、union和struct类似在于,都是不同数据类型的数据的集合,不同在于,struct中的每个成员都单独分配有存储空间,而union的成员则共享存储空间,union所占的存储空间由其中最长的成员决定,当对union的一个成员赋值时,这个空间就写入这么一个值,而原先的值就会被覆盖

2、union的应用很多,尤其对于当需要将数据拆分存储时,会用到union,例如:

union flo_to_ch
{
float f_num;
unsigned char u_num[4];
}; union flo_to_ch temperature; write_eeprom(0,temperature.u_num[0]);i2c_delay(200);i2c_delay(200);
write_eeprom(1,temperature.u_num[1]);i2c_delay(200);i2c_delay(200);
write_eeprom(2,temperature.u_num[2]);i2c_delay(200);i2c_delay(200);
write_eeprom(3,temperature.u_num[3]);i2c_delay(200);i2c_delay(200);

通过union将float型拆分成了长度为4的char型数组,节省空间的同时确保了代码的简洁

最新文章

  1. android持久化技术
  2. 今天自己解决了两个问题(IE10 type slow ChromeDriver erro)
  3. 安卓和ios的lineheight的不一样如何解决?
  4. powershell中的两只爬虫
  5. 微信公众平台开发(110) 微信连Wi-Fi
  6. Js笔试题之返回只包含数字类型的数组
  7. flask学习
  8. Js监控回车事件
  9. ES6-模块化
  10. uC/OS-II 内存管理
  11. web报表工具FineReport使用中遇到的常见报错及解决办法(二)
  12. WIn10系统软件默认安装c盘后消失看不见问题
  13. python3.6新特性
  14. MyCAT简易入门 (Linux)
  15. TCGA phenotype各列的含义
  16. Spring cloud和Dubbo
  17. SQL 复习笔记 MSSQL篇
  18. oracle 在存储过程或函数中得到异常sql
  19. sql注入语句整理
  20. 纯正商业级小程序开发(完结版).txt

热门文章

  1. NextCloud 17.0.1 升级到NextCloud 23.0.0
  2. DOS命令操作
  3. 20203412马畅若 实验二《Python程序设计》实验报告
  4. vue.cli的安装配置
  5. 05 Java 数组
  6. django中读取settings中的相关参数
  7. grep 排除目录 grep -rn CONFIG_VE --exclude-dir={arch,drivers,net} --exclude=cscope*
  8. grep展示相邻行
  9. 谈谈关于CDN缓存
  10. Yocto Project Mega-Manual 英文版 (2020官方最新合并版575页),Yocto官方文档中文版,Yocto官方文档英文版