【发布时间】:2017-05-10 04:44:57
【问题描述】:
我的意思是问它是否遵循一些特定的算法并且实际上不是垃圾。
换句话说,“垃圾”值究竟是如何存在的?考虑不调用UB,如果读取了一个垃圾值,那这个值的来源是什么?
【问题讨论】:
-
垃圾就是垃圾。如果有一种算法,它不会是垃圾,它会是“特定生成的愚蠢值,具有一些已知的可定义且可能可重现的模式”
-
这只是事先存在的内容,因此将其设置为指定值不会产生任何开销。没有算法。
-
我们是否可以在本网站上使用明确的包罗万象将有关未定义行为的问题标记为重复?
-
您要问的可能是为什么某些变量没有获得预定义的值,如果您不故意初始化它们,您会在那里发现垃圾。这主要是因为在其他变量过去使用它并将其最后一个值留在那里之后,可能会使用相同的内存位置。上电后未初始化的内存也会包含一些垃圾。所以....只需初始化我们的数据。
-
这个问题可能是一个有效的问题,可能措辞不正确。遗憾的是,对于没有经验的人来说,没有足够的谷歌搜索材料,恕我直言。我并不是说这是一个非常有用的问题,但我也不会 DV 它。只是我的两分钱。
标签: c variables initialization undefined-behavior