复制一部分字符串到另一个字符数组显示“Debug Assertion Failed!”

本人新手,学习从一个字符串取出一个子串,编译生成没问题,运行后显示“Debug Assertion Failed!”请问这个问题的原因是啥,如何解决啊?谢谢啦。
错误提示为:

图片说明

程序如下:

#include <iostream>
#include<cstring>
using namespace std;
void chouqu(char* s, int start, int end, char* result);
int main()
{
                const int len = 80;
        char m[len + 1], prev = ' ';
        cout << "请输入被抽取的字符串" << endl;
        getchar();//该语句表示将要输入字符串,之前的回车不会被当成字符串的第一个元素而跳过cin.getline()函数
        cin.getline(m, len + 1);
        char* s = m;
        char* ss = {};
        chouqu(s,1,5,ss);
        cout << "抽取结果为" << ss<< endl;
}

void chouqu(char* s, int start, int end, char* result)
{
    int len = strlen(s);
    if (start<0 || end<0 || start>len || end>len || start > end) {
        cout << "参数错误" << endl;
        result[0] = '\0';
        return ;
    }
    //从*(s+start)开始,复制end-start+1个字符到result里
    //strncpy(result, s + start, end - start + 1);//函数提示不安全,
    strncpy_s(result, sizeof(result),s + start, end - start+1 );
    result[end - start + 1] = '\0';
}

请问这个如何解决啊,

很显然,你主函数要输出 ss, 但是显然你没有赋值给他,如果你认为 char *ss = {}; 这样对的话。