c - 如何定位内存区的起始地址?

标签 c

学了C语言,有一些疑问。

如果找到内存区域起始地址的最佳方法是使用指针?

例如几个步骤

  1. 我有变量 int a = 1;
  2. 我声明了指向变量 a 的指针:int *pointer_a;
  3. 我将变量 a 分配给指针:pointer_a = a;
  4. 现在,我想打印内存区域中的地址: printf("地址变量 a= %p", &pointer_a);

我做的对吗?

最佳答案

pointer_a 应该保存变量 a 的内存地址,这就是指针的作用。就指针而言,&运算符的地址

pointer_a = &a;

然后就可以了。 printf("地址变量a = %p", pointer_a);

还是可以直接printf("Address variable a = %p", &a);

关于c - 如何定位内存区的起始地址?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44487473/

相关文章:

c - 应用 MVP 变换不会渲染任何 OpenGL

c - 将二维数组传递给 C 函数

c - c 中许多函数的单一名称 - main()

c - 外部和内部标识符

c - 传递可变数量的参数

c - 如何从 C 中的 float 中提取有偏差的指数?

c++ - 多线程环境中的 Linux 高分辨率计时器?

C - read() 是否添加 '\0' ?

c - 即使输入正确,if 语句也始终为真?

c - dup2 没有切换到文件?