当前位置: 首页 > 知识库问答 >
问题:

是不作为的行为吗?

米裕
2023-03-14
1.3.24                                                          [defns.undefined]
undefined behavior
behavior for which this International Standard imposes no requirements
[ Note: Undefined behavior may be expected when this International Standard 
omits any explicit definition of behavior or when a program uses an erroneous 
construct or erroneous data. Permissible undefined behavior ranges from ignoring 
the situation completely with unpredictable results, to behaving during 
translation or program execution in a documented manner characteristic of the 
environment (with or without the issuance of a diagnostic message), to 
terminating a translation or execution (with the issuance of a diagnostic 
message). Many erroneous program constructs do not engender undefined behavior; 
they are required to be diagnosed.
— end note ]

共有1个答案

颜经艺
2023-03-14

但是,标准怎么能说某件事是未定义的行为而不明确地这样说呢?

因为这就是未定义的意思。发生了什么还没有定义。标准定义了对有效程序的期望,它并不试图列出每一个可能的无效程序,并说“这是未定义的,也是未定义的,也是未定义的”。

该标准没有规定如果你在程序运行时点燃了你的计算机会发生什么。这并不意味着它的定义很好。显然没有定义。

 类似资料:
  • 我正在本地运行一个Flask-Restful API,并从另一个端口发送一个包含JSON的POST请求。我得到了错误 我得到 它将“Access-Control-Allow-Origin”显示为“*”。GET工作正常,只是POST给出了这个错误。会出什么问题?如果相关,对于前端,我使用react并通过Axios请求。

  • 我正在为 Elasticsearch 编写一个 Kafka Sink 连接器。 我实现了启动,把,刷新,关闭方法在Sink任务类。 但是,我不知道Kafka Sink Connector的行为到底起什么作用。 如果Connect Worker重复执行所有这些任务,即通过< code>put()方法从Kafka代理获取SinkRecord,在内部对其进行处理,然后将数据发送到Elasticsearc

  • 我已经安装了Python 3.5附带的Lubuntu 16.04 LTS,但使用Python 2.7作为默认的Python解释器。< br >两个版本都没有安装< code>pip包。我只会使用3.5版本。因此,我安装了< code>pip3,其中包含: 然后我尝试更新版本(因为Ubuntu存储库有旧版本):$ pip3安装--升级pip3但是找不到包,并给我发了这条消息: 收集pip3<br>找

  • 问题内容: 我发现同一mod操作会根据所使用的语言产生不同的结果。 在Python中: 产生 9 在C中产生 -1 ! 哪一个是正确的模? 如何使C中的mod操作与Python中的一样? 问题答案: 两种变体都是正确的,但是在数学(尤其是数论)中,Python的模数是最常用的。 在C中,您确实获得了与Python中相同的结果。例如 。请注意,它仍然对正整数:和C实现的两个变体(正或负余数)仍然起作

  • 为了简单起见,我将column称为col。为什么矩阵是[行,列]而不是[列,行]?这给我带来了很多头痛和困惑。 我的思路是这样的:1.一个正则数组, 就像一个矩阵,有一行和多列。它的符号是这样的:啊,如果我们有另一个维度, 现在有行了。因此,让我们在'n',arr[n,rows]之后记下这些行,但现实告诉我们,情况并非如此。 对不起,如果我混淆了你,对不起我的无知。

  • 我使用Eclipse用java编写了一个很酷的程序。当我在eclipse中运行它时,它完全按照预期工作。我将它导出为一个jar文件,这样我就可以使用Launch4j将它转换为一个可执行文件(.exe文件扩展名),我成功地完成了,但是现在当我试图打开可执行文件时,它说程序不兼容。我尝试在命令行编译代码,当我键入“Java计算器”试图运行程序时,它运行得很好。所以我的问题是为什么可执行文件不能工作?任