顺序表在VS中正常运行,CB中报错【已解决】

如下图,完成顺序表的初始化,尾插,打印函数后,在进行测试中发现CB中报错,而在VS中可以完美运行。百思不得其解,请各位大佬更正可能会出错的地方

CB中运行

vs中运行

运行代码

test.c

#include "SeqList.h"

void TestSeqList1() {
    SL sl;
    SeqListInit(&sl);
    SeqListPushBack(&sl, 1);
    SeqListPushBack(&sl, 2);
    SeqListPushBack(&sl, 3);
    SeqListPushBack(&sl, 4);
    SeqListPushBack(&sl, 5);

    SeqListPrint(&sl);
}

int main() {
    printf("aaa");
    TestSeqList1();

    return 0;

}

SeqList.c

#include "SeqList.h"

//!函数实现

void SeqListPrint(SL* ps) {
    int i;
    for (i = 0; i < ps->size; i++) {
        printf("%d", ps->a[i]);
    }
    printf("\n");
}



//!初始化创建
void SeqListInit(SL* ps) {
    ps->a = NULL;
    ps->size = 0;
    ps->capacity = 0;
}
//!尾插
void SeqListPushBack(SL* ps, SLDataType x) {
    //!如果没有空间或者空间不足 则扩容
    if (ps->size == ps->capacity) {
        int newcapacity = ps->capacity == 0 ? 4 : ps->capacity * 2;
        SLDataType* tmp = (SLDataType*)realloc(ps->a, newcapacity * sizeof(SLDataType));
        if (tmp == NULL) {
            printf(("realloc fail\n"));
            exit(-1);
        }

        ps->a = tmp;
        ps->capacity = newcapacity;
    }
    ps->a[ps->size] = x;
    ps->size++;
}
//!尾删
void SeqListPopBack(SL* ps);
//!头插
void SeqListPushFront(SL* ps, SLDataType x);
//!头删
void SeqListPopFront(SL* ps);

SeqList.h

#include <stdio.h>
#include <stdlib.h>


typedef int SLDataType;
//!动态顺序表
typedef struct Seqlist {
    SLDataType* a;//动态开辟的数
    int size;    //表示数组中储存了多少个数据
    int capacity;//数组实际能存数据的空间容量是多大
}SL;

///打印
void SeqListPrint(SL* ps);


//!接口函数
//!创建初始化
void SeqListInit(SL* ps);
//!尾插
void SeqListPushBack(SL* ps, SLDataType x);
//!尾删
void SeqListPopBack(SL* ps);
//!头插
void SeqListPushFront(SL* ps, SLDataType x);
//!头删
void SeqListPopFront(SL* ps);
//....

                          求各位大神告知原因!!!!!

---------------------------------------------------------分割线---------------------------------------------------------------

【10.2更新已解决】

在浏览SeqList.文件中,意外发现Debug和Ralease没有选中,导致无法运行。

选中后,程序成功运行。

 

 

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值