gpt4 book ai didi

c - 这个代码片段是如何工作的?

转载 作者:太空宇宙 更新时间:2023-11-04 01:40:27 25 4
gpt4 key购买 nike

代码非常简单,但结果让我摸不着头脑。我只是在玩指针算术,想打印出数组但我得到数组的数字再加上 3 个。这 3 个额外的从哪里来?

#include <stdio.h>


int my_array[] = {1,3,5,6,73,343,34};

int *pointer_numeros;

int main (void) {
int i = 0;
pointer_numeros = my_array;

while(*pointer_numeros) {

printf("los numeros del array son %d\t %d\n\n", i++, *pointer_numeros++);

}

getchar();
return 0;

}

最佳答案

*pointer_numeros 在数组末尾不计算为 false;它将继续遍历内存,直到遇到内容为零的地址(但这是未定义的行为)。

您可以像其他人所建议的那样以零终止数组。但总的来说,您仍然会遇到一个问题:如果您的某些元素本身为零怎么办?

关于c - 这个代码片段是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6271707/

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