嵌入式爱好者

查看: 1130|回复: 0

[Linux] 指针在液晶屏显示中的用法

[复制链接]

50

主题

51

帖子

121

积分

扫一扫,手机访问本帖
发表于 2019-10-12 17:13:05 | 显示全部楼层 |阅读模式
   本文纯属虚构,如有雷同,爱咋咋地。



   自从上次受到保洁阿姨点拨,张三不仅爱上了爬楼,还爱上了洗头。不知不觉中,成为了研发部最靓的仔。前台小妹会多看他一眼,而食堂大妈在给他盛菜的时候,手也不抖了。



   这天上午,张三在debug,保洁阿姨过来打扫卫生了,张三连忙起身打招呼。



   张三:阿姨好!



   阿姨:嗯,水杯挪一下。



   张三:我现在爱上洗头了!每次洗完头都感觉思路清晰!



   阿姨:嗯,抬下脚。



   张三:您让我勤洗头,是不是因为洗头对编程有帮助?洗完头大脑很放松~



   阿姨:…不是…你头皮屑太多了,勤洗头,我工作量少点。不然每次给你擦桌子都要擦半天。



   张三:额,好的。



   阿姨:最近忙什么呢?



   张三:哦哦,之前的设备升级了一下,加了个串口,可以通过电脑直接修改屏幕上的参数。但是参数送进来不能直接用,要转换一下。我现在是用带返回值的函数处理的,例如:



   canshu1 = value_process(canshu1_uart);



   canshu1_uart是串口送进来的数据,经过函数处理,生成可以用的值,给canshu1。这个方法简单是简单,但是一次只能处理一个数据,还是有点慢~~~



   阿姨:马马虎虎吧!



   张三:阿姨,您有什么好的方法吗?



   阿姨:指针呀,你之前都是正着用,反着用不就行了。



   张三:反着用?



   阿姨:是啊,之前你都是定义一个指针,然后通过这个指针从固定的地址取值。现在你只要反过来,把用来存储的变量确定下来,然后把变量的地址做为参数送入函数处理,这样多省事。



   上面的函数可以改成这样:

value_process(u8 *canshu01, u8 *canshu02……)

{

   /* canshu1_uart  处理*/



   * canshu01 = …;



   /* canshu2_uart  处理*/



   * canshu02= …;

}

   调用的时候这样用:
1
value_process(&canshu1, &canshu2……)

   这样的话,没有返回值,一次处理多少个参数都可以。多好看~



   张三:…



   阿姨:我还以为你会用指针了,原来还是不会~



   张三:…….







   一周后,张三在爬楼时再次偶遇保洁阿姨。



   张三:阿姨好!我想向您请教几个问题。



   阿姨:说!



   张三:指针的概念学校里倒是讲过,但是用的不多。后来实习的时候遇到问题网上搜索,很多人也说指针的功能很强大,但是新人尽量少用,因为不好理解,容易出问题。为什么您理解的这么透彻?



   还有您上次举得那个例子,我想了想,特别贴切。比我老师说的都清晰,您是怎么想到的?额,阿姨,您走错了,咱们公司不在这一层。



   阿姨:你的话有点多。另外,没走错,我是来收租的。



   张三:收…..租…..?



   阿姨:废话,租房子不要钱吗?像这一层的公司,刚来半年,公司名字我还没记住,只能通过门牌号,也就是地址来记住他们,这就是地址取值;像你们公司名字就好记啦,能力有限~~,上个月刚交的租金,这就是通过变量来取值啦。多简单!



   你们这些程序员啊,整天说自己是高级工种、高级工种!!!高级在哪呢………..身板弱的跟小鸡仔一样,脑子又不灵光……………还没对象!没事多感受下生活,天天加班,脑子都木了。



   张三:谢谢阿姨,我懂了!



   说罢掏出手机,找到前台小妹的微信:今晚有空吗?要不要看复联4?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|飞凌嵌入式 ( 冀ICP备12004394号-1

GMT+8, 2020-2-23 16:30

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表