返回官网官方微博

麦步社区-论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

搜索
热搜: MAI 表盘
查看: 2961|回复: 3
打印 上一主题 下一主题

表盘编写坑—数据类型

[复制链接]

2

主题

20

帖子

1029

麦力

精华
0
阅读权限
30
在线时间
41 小时

跳转到指定楼层
楼主
发表于 2016-5-12 09:43:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
        刚从坑里爬出来,和大家分享一下。
        最近写表盘,为了省代码,很多变量都定义成char型的。一不小心,有的函数返回值是int型,但却用了char型变量去接收,结果就溢出了变成负数了。例如:

char g_window_id;
int main(void)
{
    P_Window p_window = init_window();

    g_window_id = app_window_stack_push(p_window);

    return 0;
}


这样给g_window_id赋值的话,当 app_window_stack_push(p_window) 返回值大于128时,g_window_id 就会变成负数。从而在使用     P_Window p_window = app_window_stack_get_window_by_id(g_window_id); 无法获取窗口指针,进而也就无法更新窗口界面了。


顺便说一句,跟重启有关的表盘问题,很大概率是全局变量出错了。

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信 WeiboWeibo
收藏收藏 分享分享 顶 踩

48

主题

670

帖子

3384

麦力

精华
0
阅读权限
200
在线时间
745 小时
沙发
发表于 2016-5-12 10:14:41 | 只看该作者
很好的经验分享
发帖内容均来自麦步智能手表自动触发,不接受抄水表、送快递、送温暖等任何形式的关怀

48

主题

670

帖子

3384

麦力

精华
0
阅读权限
200
在线时间
745 小时
板凳
发表于 2016-5-12 10:15:11 | 只看该作者
啥时候把表盘或者应用分享出来呀
发帖内容均来自麦步智能手表自动触发,不接受抄水表、送快递、送温暖等任何形式的关怀

1

主题

3

帖子

10

麦力

精华
0
阅读权限
100
在线时间
13 小时

麦步工业测评协会

地板
发表于 2016-5-13 15:47:17 | 只看该作者
感谢楼主
回复

使用道具 举报

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

本版积分规则

QQ|Archiver|手机版|小黑屋|麦步官方论坛 ( 粤ICP备12052190号  

GMT+8, 2024-5-6 17:01 , Processed in 0.086125 second(s), 26 queries .

Powered by Discuz! X3.2

© 2012-2021 Comsenz Inc.

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