gpt4 book ai didi

c - C 中的指针偏移量

转载 作者:行者123 更新时间:2023-11-30 19:41:06 26 4
gpt4 key购买 nike

在网上阅读一些有关C语言的教程时,我发现以下代码为长度为(n1-n0+1)的数组分配内存。我不明白添加此指令的方式和原因:v -= n0; 有效。这是代码:

double *AllocVector(int n0, int n1)
{
double *v;
int i;

v = malloc((n1-n0+1) * sizeof(double));
if (!v)
printf("Error allocating memory in AllocVector");

/* Initiate */

v -= n0;
for (i = n0; i <= n1; i++)
v[i] = 0.0;

return v;
}

最佳答案

您正在调用未定义的行为。至此,一切皆有可能,一切皆有可能发生。

我碰巧看起来能够正常工作是可能发生的事情之一。

关于c - C 中的指针偏移量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33891840/

26 4 0
文章推荐: javascript - chrome 版本更新后的 Fullpage.js buggy 幻灯片动画
文章推荐: c# - TweetSharp GetAccessToken 方法返回 null 但只是有时
文章推荐: javascript - 如果属性具有值,则在
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com