for执行的语句超过1行的话就要加花括号其他的语句比如if或是while也是一样的 然后数组是从0开始计数的你定义的数组a[5]的数组下标是a[0]到a[4],a[5]你并没有定义所以它输出的值就是a[5]的内存里面指向的值 这个值是任意的 所以指针在使用的时候要小心谨慎如果使用之前不考虑清楚的话像这种情况频繁出现很容易产生系统崩溃等一系列麻烦
循环结束后 i=5.你是想输出(a+5)地址所指的变量即a[5]的值,可是你定义的数组最大只为a[4]。故输出不是你想的那样。
指针别乱用啊哥们