程序异常终止 ,但是没有报错

问题遇到的现象和发生背景

不能正确运行,程序没执行完异常退出

用代码块功能插入代码,请勿粘贴截图
#include 
using namespace std;
////////////////////////////////////////////////////////////////////////////
#define ERROR 0
#define OK 1
typedef int Status; //单链表中的元素为整型 
typedef int ElemType;
////////////////////////////////////////////////////////////////////////////

//单链表的类型定义 

typedef struct  LNode {

    ElemType data;  // 数据域

    struct LNode* next;  // 指针域

}LNode, * LinkList;

////////////////////////////////////////////////////////////////////////////

//创建含n个元素的非递减有序单链表 ,注意插入排序 

void CreateList_Lsort(LinkList& L,int n) {
    L->next = NULL;
    LNode* p_new = L->next;
    //新建立一个数组存放输入的元素的值
    int a[1024];
    //利用冒泡发先对输入的数据进行排序
    for (int m = 0; m < n; ++m) { cin >> a[m]; }
    int u, v,temp=0;
    for(u=0;ufor(v=0;v1;++v)
        {
            if (a[v] <= a[v + 1]) {  temp = a[v]; a[v] = a[v + 1]; a[v + 1] = temp; }
        }
    //创建一个链表按序将已经排列好的数据存放到链表中
    for (int j = 0; j < n; ++j) {
        p_new = new LNode;
        p_new->data=a[j];
        p_new->next = L->next;
        L->next = p_new;
    }


}//CreateList_Lsort



//输出单链表

Status PrintList_L(LinkList L) {

    LinkList p = L->next;

    while (p) {

        cout << p->data << " ";

        p = p->next;

    }

    cout << endl;

    return OK;

}//PrintList_L

int main() {

    LinkList La;
    int n;
    cin >> n;//输入线性链表La的长度
    CreateList_Lsort(La, n);
    PrintList_L(La);
    return 0;

}

运行结果及报错内容

0x00ED6A4B 处(位于 test.exe 中)引发的异常: 0xC0000005: 写入位置 0xCCCCCCD0 时发生访问冲突。

那就是程序崩溃了
创建函数一开始就会崩溃
void CreateList_Lsort(LinkList& L,int n) {
L->next = NULL;
LinkList是个指针,还没有分配空间,你就开始操作它的成员,就会崩溃
先L = new LinkList;
然后才是L->next = NULL;

main里 LinkList La;(你代码中分号是全角的)有问题,La是个指针,没有分配内存,CreateList_Lsort中直接 L->next = NULL;,就会报错。
main中改为LNode La;,对应的下面2个函数参数也要修改一下
CreateList_Lsort(&La, n);
PrintList_L(&La);