gpt4 book ai didi

c - 我的 C 编程很生疏,并且遇到了一些问题

转载 作者:行者123 更新时间:2023-11-30 20:13:24 25 4
gpt4 key购买 nike

我试图在 c 中声明一个数据结构并设置一些变量,但遇到了一些麻烦。

struct point {
float *x;
float *y;
float *z;
};

这个结构体有 24 个字节长,所以对我来说没问题。

const unsigned int sz = 1<<24;
struct point _points[sz];

for(int i = 0; i < sz; ++i)
{
_points[i].x = get_rand_float();
_points[i].y = get_rand_float();
_points[i].z = get_rand_float();
}

// get_rand_float() returns a pointer to float;

我遇到的问题是应用程序会崩溃。

我稍微玩了一下代码,似乎 1<<24 太大了?将其降低到 1<<14 程序运行得很好。

这让我想到了另一个问题,为什么 1<<24 或大约 1600 万个整数会导致我的程序崩溃?这是一个相当简单的程序,只是 int main 样板和这个结构?

最佳答案

您不需要指向 float 的指针结构:

struct point {
float *x;
float *y;
float *z;
};

你想要一个 float 结构:

struct point {
float x;
float y;
float z;
};

关于c - 我的 C 编程很生疏,并且遇到了一些问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30984560/

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