如何使用指针常量指向 ANSI C 中的特定内存地址(例如 0x0001a00 这样的地址)?

How can one use pointer constants to point to a specific memory address (e.g. an address like 0x0001a00) in ANSI C?

我正在为一个项目试验 C 编程中的指针,并希望获得一些指导,了解是否有其他方法可以将指针常量初始化为内存地址 0x0001a000。

以下是我的做法:

volatile int *firstAddress = (volatile int *)0x0001a000; 
printf("First Memory address is: %p\n", firstAddress);

在 C 编程中是否有更短的方法来初始化上述内容?

这正是您初始化此类常量的方式,但结果非常具体实现。

如果给定的地址不是一个明确记录为有效的地址,您可能会调用 undefined behavior.

你也不能让它比这更简洁了。整数和指针之间的转换需要转换。