#include <stdio.h>
#include <stdlib.h>
int main(void) {
int a[6] = {1,2,3,4,5,6};
int *p = &a[6];
printf("%d\n", *p);
printf("%d\n", *(p + 1));
}
我想在指针的帮助下打印数组的元素,但它给我一个错误。请通过查看上面的代码来帮助我?如何通过指针打印数组的元素?
#include <stdio.h>
#include <stdlib.h>
int main(void) {
int a[6] = {1,2,3,4,5,6};
int *p = &a[6];
printf("%d\n", *p);
printf("%d\n", *(p + 1));
}
我想在指针的帮助下打印数组的元素,但它给我一个错误。请通过查看上面的代码来帮助我?如何通过指针打印数组的元素?
你需要的东西是这样的:
#include <stdio.h>
#include <stdlib.h>
int main(void) {
int a[6] = {1,2,3,4,5,6};
int *p = a;// storing base address
printf("%d\n", *p);
printf("%d\n", *(p + 1));
}
您可能想对'int a [] = {1,2,3,4,5,6};'发表评论''不太容易出错,等等。 –
您能告诉我这个改变的原因吗? –
你正在访问一个[6]的地址,你的数组的范围是从0到5,这是给你垃圾值。 –
什么是6个元素的数组的有效索引?这是什么使&'[6]'? – StoryTeller
您访问[6]并且索引6不存在 –
什么是C中的零索引*? –