智能小车三《技术用到九寨沟去》
发布日期:2021-10-03 12:40:20 浏览次数:7 分类:技术文章

本文共 1024 字,大约阅读时间需要 3 分钟。

     请先原谅我的标题,本文还是讲技术的。本来我是想和以前一样介绍arduino技术。但昨天的地震和我最近遇到的一些事,让我感觉到人的渺小,在大自然、宇宙、行驶的汽车面前,人就是只蚂蚁。但人不同于蚂蚁,人有梦想。我的梦想就是从计算机这个角度来理解世界,为世界做一些事。比如利用arduino技术制作一个小车,去探测倒塌的房屋。
      但我还是一脚踏实地,一步一步的学习技术,实现各种功能,最后才能用技术实现上面的愿望。下面还是要进入枯燥的技术知识,我分享一下关于arduino、c、java中的字符串的区别。
在说String以前,先看一下arduino的基本类型。这里还是引用一下官方文档https://www.arduino.cc/en/Reference/HomePage
     通过c语言的sizeof能得到各类型的字节大小。
类型 字节长度
void 1
boolean 1
char 1
unsigned char 1
byte 1
int 2
unsigned int 2
word 2
long 4
unsigned long 4
short 2
float 4
double 4
string - char array 字符数组
String - object 6
array 数组
    从上面可以看出arduino即有string也有String,那我们用那个呢?
     Arduino的内置String数据类型比C字符数组更容易使用,但这是通过在String代码库里实现的,这将导致需要从Arduino获得更多的资源需求(从上图也可看出它需要的字节数最多,6个)。从本质上说,更容易出问题。
String数据类型这所以如此灵活,因为它使用动态内存分配。也就是说,当你创建或修改一个String,arduino会从c库请求新的存储空间,并且String使用完毕时,Arduino需要回收空间。
     可以写一个程序,不停的给String加值,观察其内存的变化。
    可以看到, 可用内存不断减少,最后内存泄漏,变量s没有值了。这就是arduino的String.而c语言中没有String,只有char [],这个大小可以自己控制。java中的String其实与c、arduino没有什么比较的意义。
因为它经过jdk的封装,不用考虑释放的问题,当然一直加最终也会抛出out of memory异常。
     其它的数据类型我不多讲了,网上有很多教程,也可联系我,我发给你。

转载地址:https://blog.csdn.net/koolfret/article/details/76983605 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:智能小车四《串口通信》
下一篇:智能小车二《arduino的软件环境》

发表评论

最新留言

很好
[***.229.124.182]2024年04月15日 02时29分26秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

转:【答学员问】有什么经验教训,是你在面试很多次之后才知道的? 2019-04-27
消息队列:解耦、异步、削峰,现有MQ对比以及新手入门该如何选择MQ? 2019-04-27
【奇技淫巧】-- 三角形最小路径和 2019-04-27
【小技巧】argc和argv的用法 2019-04-27
学不下去了怎么办? 2019-04-27
二叉树的前中后序遍历(迭代法)(带动画) 2019-04-27
【小技巧】【XShell】【Xftp】Windows桌面与Linux虚拟机互传文件 2019-04-27
【redis入门】Centos下安装redis 2019-04-27
【redis入门】redis安装后相关知识串讲 2019-04-27
【redis】来吧,展示一下redis 发布-订阅模式 2019-04-27
讲通C/C++预编译/条件编译指令 #ifdef,#ifndef,#endif,#define,… 2019-04-27
【redis6.0.6】redis源码慢慢学,慢慢看 -- 第二天:空间配置(zmalloc) 2019-04-27
当下热点词再学:redis缓存预热、更新、降级,限流 2019-04-27
【redis6.0.6】redis源码慢慢学,慢慢看 -- 第五天:adlist 2019-04-27
别抖,OK? 操作系统抖动现象、网络抖动与延迟、函数抖动之防抖与节流,串讲 2019-04-27
第六天:网络处理(anet部分)-- redis源码慢慢学,慢慢看【redis6.0.6】 2019-04-27
通过域名获取主机IP -- struct addrinfo 2019-04-27
【C++】算法集锦(8):从两数和问题拓展到一百数和问题 2019-04-27
【C++】算法集锦(9):背包问题 2019-04-27
【C++】算法集锦(10)通俗讲kmp算法 2019-04-27