380091044
发表于 2024-2-1 17:32:43
380091044 发表于 2024-2-1 16:59
Source\App\main.c(166): warning C294: unreachable code
Source%uCOSII\os_core.c(1865): warning C29 ...
我重新下载了一下,我没有动之前就有的,不是我修改的,
CosyOS
发表于 2024-2-1 17:50:21
380091044 发表于 2024-2-1 17:32
我重新下载了一下,我没有动之前就有的,不是我修改的,
我想这个报警是不会影响正常使用的,具体是哪里影响的不知道,总之是编译器认为代码无法运行到指定行。
你可以把链接发给我,我晚上下载研究下。
380091044
发表于 2024-2-1 21:52:58
CosyOS 发表于 2024-2-1 17:50
我想这个报警是不会影响正常使用的,具体是哪里影响的不知道,总之是编译器认为代码无法运行到指定行。
...
https://www.stcai.com/xtrj
就在这下载的,
tzz1983
发表于 2024-2-2 14:05:53
本帖最后由 tzz1983 于 2024-2-2 14:22 编辑
380091044 发表于 2024-2-1 21:52
https://www.stcai.com/xtrj
就在这下载的,
这个警告不影响使用.
警告的翻译是: 存在不可能执行到的代码,如下所示OS空闲任务代码, 其中 for(;;) 编绎器认为这是一个死循环, 之后的代码(隐藏的return)永远执行不到, 所以报警了.
但是这里并没有逻辑错误 , 任务函数不需要返回, 所以忽略这个报警即可.
voidOS_TaskIdle (void *p_arg) large reentrant
{
#if OS_CRITICAL_METHOD == 3u /* Allocate storage for CPU status register */
OS_CPU_SRcpu_sr = 0u;
#endif
p_arg = p_arg; /* Prevent compiler warning for not using 'p_arg' */
for (;;) {
OS_ENTER_CRITICAL();
OSIdleCtr++;
OS_EXIT_CRITICAL();
OSTaskIdleHook(); /* Call user definable HOOK */
}
}
如果实在感到不爽, 那么在C51选项卡上, 降低一级警告等级就不会报警了, 当前的警告等级是最高的
tzz1983
发表于 2024-2-2 14:17:52
@CosyOS, 我来踩贴了哦, {:lol:}, 上次看过CosyOS距离现在应该有几个月了, 刚才又下载来看了一下, 感觉确实很不错的, 比较容易上手.
有没有这么一种可能, 你在原码的每一个文档上有一个文档主要功能介绍, 每一个函数上添加功能介绍, 代码也添加一些注释.
我觉得这样对推广有好处.
CosyOS
发表于 2024-2-2 15:01:17
tzz1983 发表于 2024-2-2 14:17
@CosyOS, 我来踩贴了哦, , 上次看过CosyOS距离现在应该有几个月了, 刚才又下载来看了一下, 感觉确实很不错 ...
你的建议我懂得,以后我会陆续添加更为详细的注释。
其实我个人是非常讨厌注释的,看到注释就不爽,很好的代码全被注释搞砸了{:4_165:}
380091044
发表于 2024-2-2 16:35:48
CosyOS 发表于 2024-2-2 15:01
你的建议我懂得,以后我会陆续添加更为详细的注释。
其实我个人是非常讨厌注释的,看到注释就不爽,很好 ...
对于已经入门的,其实没必要;对于未入门或是想入门的,那是必须的,推广就应该让这些想入门的能看懂,看不懂,就没法接着用,赞同楼上说法,可以快速推广,点赞!!
380091044
发表于 2024-2-2 16:37:12
tzz1983 发表于 2024-2-2 14:05
这个警告不影响使用.
警告的翻译是: 存在不可能执行到的代码,如下所示OS空闲任务代码, 其中 for(;;) 编 ...
感谢指点,我会深入研究一下,
380091044
发表于 2024-2-2 16:55:21
感谢老师指点,警告等级降低一级,果然看着舒服多了。
380091044
发表于 2024-2-4 11:15:01
char putchar(char c)//putchar代表输出一个字符 发送完一个字符C后,最后返回的还是C,起到一个什么作用?请老师指点一下