MST

星途 面试题库

面试题:C语言中如何获取一个变量的内存地址并通过指针访问其值

在C语言中,给定一个整型变量`int num = 10;`,请写出获取`num`的内存地址,并通过指针来访问和修改`num`值的代码,同时解释每一步的作用。
48.0万 热度难度
编程语言C

知识考点

AI 面试

面试题答案

一键面试
#include <stdio.h>

int main() {
    int num = 10;
    // 定义一个整型指针,用于存储num的地址
    int *ptr;
    // 获取num的内存地址并赋值给指针ptr
    ptr = &num;
    // 通过指针访问num的值并打印
    printf("通过指针访问num的值: %d\n", *ptr);
    // 通过指针修改num的值
    *ptr = 20;
    // 打印修改后num的值
    printf("修改后num的值: %d\n", num);

    return 0;
}
  1. int num = 10;:定义一个整型变量num并初始化为10。
  2. int *ptr;:定义一个整型指针变量ptr,该指针用于存储整型变量的地址。
  3. ptr = &num;&是取地址运算符,将num的内存地址赋给指针ptr
  4. printf("通过指针访问num的值: %d\n", *ptr);*是解引用运算符,通过指针ptr访问它所指向的内存地址中的值,也就是num的值,并打印出来。
  5. *ptr = 20;:通过指针ptr修改它所指向的内存地址中的值,即将num的值修改为20。
  6. printf("修改后num的值: %d\n", num);:打印修改后num的值。