gpt4 book ai didi

c - 在下面的代码中使用指针打印 2 个变量的数据

转载 作者:行者123 更新时间:2023-11-30 15:00:01 25 4
gpt4 key购买 nike

我有以下代码:

#include <stdio.h>
#include <stdlib.h>

int *p;

int main() {
int a = 4, b = 8;

p = &b;

//TODO: fill in the blank
printf("a = %ld\n", /*Fill in here */);
printf("b = %ld\n", /*Fill in here */);

return 0;
}

如何打印 2 个变量的值 ab仅使用 p访问它们?

最佳答案

一般来说,您无法使用当前的代码/方法来执行此操作。

C 标准中没有任何内容可以保证两个或多个自变量的内存分配策略,因此不可能进行上一个-下一个内存位置跟踪。没有确定的方法可以推断 a 的值,只能访问 p

如果您需要从单个指针访问多个变量(相同类型)的值,请考虑创建一个数组,其中的元素保证驻留在连续的内存位置,因此指针算术是有意义的,我们可以确定性地到达上一个-下一个元素。

关于c - 在下面的代码中使用指针打印 2 个变量的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42393538/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com