相同的程序C语言程序每次运行结果不一样,为什么?

原码如下:
#include
main()
{
int k=0,*ps,s[11]={0,1,2,3,4,5,6,7,8,9,10};
for(ps=&s[6];*ps!=0;ps++)
k+=*ps;
printf("%d\n",k);
}
求问为啥?

输出地址当然会变的啦,输出地址指向的内容就不会变了~

会不会是没给*ps赋初值?

你指针指向的是地址,当然每次不一样

s[11]={0,1,2,3,4,5,6,7,8,9,10};
没有结束符\0,可以改为s[12]={0,1,2,3,4,5,6,7,8,9,10,0};

for循环的条件有问题吧, *ps!=0你换成ps != ps +11