p 是 0xCE6DC8EA是啥意思?是什么意思?

/7)编写程序,将用户输入的字符串中从第i个到第j个之间的字符逆序颠倒。(字符串、i、j的值都由用户从键盘输入)
例如: 输入字符串:abcdefgh
输入i:3
输入j:7
颠倒以后的字符串为:abgfedch
/

#include <stdio.h>
#include <stdlib.h> 
#include<iostream>
#include<string>
using namespace std;
int main()
{
    char a[30];
    cout << "输入字符串:";
    cin >> a;
    char *p=a;
    int i, j, k;
    cout << "输入i:";
    cin >> i;
    cout << "输入j:";
    cin >> j;
    cout << "颠倒以后的字符串为:";
    for(k=0;k<i-1;k++)
        cout << *(p + k);
    for (k = j-1; k >= i - 1; k--)
        cout << *(p + k);
    for(k=j;*(p+k)!='\0';k++)
        cout << *(p + k);
    return 0;
}

img

大一软件工程学生,请教一下各位这是什么意思

p的值是地址,你的截图已经很明白了,j和k的是一个错误的大值,导致p越界