存储对变量数组所做的更改

发布于 2024-12-09 19:02:05 字数 343 浏览 0 评论 0原文

我正在将程序的玩家位置存储到存储为全局变量的数组中,其中一个示例是:

float motor1[] = {4.312, 27.312};

每当进行移动时,我都有名为 checkposition、moveplayer 和 updateposition 的函数来检索和更新此数组。所有这些函数都位于一个名为 motor.c 的模块中,并且具有执行它们的层次结构。我有一个主模块 main.c,它调用该模块并向其传递一些信息,然后 motor.c 对其进行处理,然后给出答案。让我困惑的是,既然数组被保存为全局变量,这是否意味着每次调用该模块时都会初始化它?这意味着我的更新位置功能永远不会在第一步之后起作用。

I am storing the positions of players for a program i am writing to arrays stored as global variables, an example of which is:

float motor1[] = {4.312, 27.312};

Any time a move is made, I have functions called checkposition, move player and update position that retrieve and update this array. All of these functions are in one module called motor.c and have a hierarchy in which they are performed. I have a main module main.c which calls on this module and passes it some information and the motor.c processes it and then spits out an answer. The thing that confuses me is that since the array is saved as a global variable does that mean that it is initialized every time this module is called? Which would mean that my update position function would never work beyond the first move.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

说不完的你爱 2024-12-16 19:02:05

不,如果它是全局变量,它只会在程序启动时初始化一次。

No, if it's a global variable, it gets initialized just once, on program startup.

我的鱼塘能养鲲 2024-12-16 19:02:05

不,全局变量在程序启动时初始化(并且只有在那时)

No, a global variable is initialized when the program start up (and only then)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文