我所遇到的是下面给出的线

           char *ch=(char*)3000

我想知道这行的意义......

没有正确的解决方案

其他提示

它看起来像指针,CH,被分配一个绝对的内存地址3000一般一个非常糟糕的主意,除非你在嵌入式系统上工作,没有分页,你知道的究竟的什么在存储器位置3000。

也许看到代码的其余部分是有关......点击

这指针可以是相对于它在其中驻留(在Intel处理器)。在这种情况下,3000可以简单地一个索引到该段,在程序中,在这里我们没有线前面定义

这取决于系统体系结构,环境,操作系统,编译器,代码的其余部分(和程序员...)。

这不是明摆着的吗?

的数值“3000”被转换为字符指针,即ch被初始化为存储器地址3000(十进制)。

AFAIK,3000是没有特殊的地址/值,和在大多数情况下访问它会导致段故障或垃圾值。

如果你看到,在代码中,可能是它被错误地用来代替(无效*),说在你有密钥值对地图的情况下,该结果可以被铸造成在这种情况下的整数。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top