- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在使用 Tasking VX 工具集(建立在 Eclipse 上)并且有一个相当基本但基本的问题我无法解决......我已经 RTFMed 但仍然完全不聪明。
想象一下简单的代码片段:
#include <stdbool.h>
bool myFlag = false;
如果我启用 MISRA-C 检查,我会得到以下信息:
MISRA-C rule 10.1 violation: [R] restrict the use of implicit conversions for integer types
Eclipse 被设置为 C99 实现,并且根据 standard library definition , stdbool.h
定义为:
#define bool _Bool
#define true 1
#define false 0
我假设这个错误是因为 #define false 0
并且该工具正在隐式转换为 bool?
注意:如果我进行赋值,那么错误就被移除了:
bool myFlag = (bool)false;
但是(恕我直言)这掩盖了问题,而不是解决问题,我真的不想投下每一个任务。
诸如 LINT 之类的工具允许您指定 bool 类型以阻止此类误报...我需要 Eclipse/Tasking 的等价物
所以我的问题是:
我怀疑某处有一个工具选项可以告诉 TASKING bool
是 bool 类型,因此 false
和 true
可以使用吗?
有吗?
{请不要[在此线程]讨论 MISRA 的优点(或其他方面)
最佳答案
MISRA 规则 10.1 说
(Rule 10.1) The value of an expression of integer type shall not be implicitly converting to a different underlying type if:
a) it is not a conversion to a wider integer type of the same signedness, or
b) the expression is complex, or
c) the expression is not constant and is a function argument, or
d) the expression is not constant and is a return expression
#include <stdbool.h>
bool myFlag = false;
等同于:
_Bool myFlag = 0;
0
是 int
类型,它是有符号整数类型,而 _Bool
是无符号整数类型。您正在将有符号类型的值隐式转换为无符号类型的值,因此您违反了 MISRA 规则 10.1 中的 a)
。
请注意,如果您使用的是 MISRA-C:2004(我认为 MISRA-C:2012 尚未发布),在发布时仅考虑了 C90,_Bool
是C99 添加。正如我在评论中所写,您可以使用这样的强制转换来消除警告:
bool myFlag = (bool) false;
这就是 MISRA 的美妙之处。
关于c - 用 bool 值告诉 VX-Tasking "bool"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13028048/
有谁知道发行者脚本处理流程应该如何在 VeriFone 密码键盘上工作?据我了解,卡处理器在 9f18 标签中发回脚本。标有 71 标签的脚本将在第二次生成 AC 之前处理,标有 72 标签的脚本将在
我已经为RPG Maker XV ace制作了一部电影,背景音乐也很简单。 该程序仅允许播放.ogv电影(OGG,THEORA)。我的视频质量没有问题,但是声音失真并且“跳跃” (例如我们在90年代演
我正在尝试按照 https://dribbble.com/shots/2673159-Funnel-UI-concept/attachments/538068 的思路构建一些东西 我查看了 d3/vx
我正在尝试检查包含正确格式版本号的输入字符串。 vX.X.X 其中 X 可以是任意数量的数字,例如: v1.32.12 or v0.2.2 or v1232.321.23 我有以下正则表达式
我正在尝试在 Verifone VX 520 屏幕上显示位图图像。 我尝试使用 put_BMP()函数,但它返回 -1并且图像不显示。图像是单色和 128x128 像素。这是代码: int main(
我正在使用 Tasking VX 工具集(建立在 Eclipse 上)并且有一个相当基本但基本的问题我无法解决......我已经 RTFMed 但仍然完全不聪明。 想象一下简单的代码片段: #incl
所以我试图利用这个伟大的例子 Force-Directed Graph对于一些非常简单的 json: https://raw.githubusercontent.com/DealPete/forceD
目前,我正在尝试制作一个家谱 配偶/伴侣(多个) 配偶/伴侣的子女 我想在 React.js 中完成这项工作,我正在使用 VX 根据 D3 树结构,一个 child 只能有一个 parent ,因此为
Docker Hub 搭建 Syncthing image为我来自 this source repo . 我标记了 latest commit v0.13.5,但 Docker 构建了两次:once
我一直在关注a tutorial但不断收到以下错误 AttributeError:蠕虫实例没有属性“move” 我不确定这到底意味着什么或如何解决它。该错误指向底部的第 44 行,该行是 w.move
React VX 图表。我已经安装了所有必需的软件包。来自 VX 站点的代码:https://github.com/hshoff/vx import React from 'react'; impor
当我还为详细模式设置详细时,我正在尝试配置 PS4 以获得更好的 xtrace 输出。我想做的一些事情会生成子 shell,但我希望看到这些操作的任何 -x 或 -v 输出,因为它们会为每一行打印。
我正在试用 Go 模块。我的项目需要库 golang.org/x/net/html,所以我定义了这个 go.mod 文件: module github.com/patrickbucher/pretty
我正在尝试安装 gtsam并且遇到了一些问题。 我将 boost 安装到 c:/program files/boost/boost_1_56_0 并将以下内容添加到我的 CMakeLists.text
我是一名优秀的程序员,十分优秀!