【发布时间】:2015-05-06 17:40:17
【问题描述】:
这是我想了很久的事情。每隔一段时间,我就会看到人们使用 1 或 -1 作为指针的虚拟值。为了安全需要不同的变量。
可以使用这样的指针吗?我想-1没问题。但是也可以使用其他负数吗?我可以确定 1 不是已使用的内存位置吗?如果是这样,我可以使用内存指针达到哪个值。
附:我知道在指针中存储其他数据,尤其是正值,是非常非常糟糕的做法。但我只是想知道在任何现实生活中会有什么后果。
【问题讨论】:
-
一个指针应该指向一个有效的对象,或者
nullptr其他一切都是未定义的行为。 -
但我只是想知道它有多糟糕 xkcd.com/748
-
一个很好的@Borgleader。我已经搜索了很多。但没有偶然发现那个。
-
哦,这个好像也有点关系。 stackoverflow.com/questions/3304795/…
标签: c++ pointers pointer-arithmetic