编辑代码

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

static int* arr=NULL;
static int count;

int create_array_stack(int sz){
    arr=(int*)malloc(sz*sizeof(int));
    if(!arr){
        return -1;
    }
    return 1;
}

void delete_stack(){
    free(arr);
    arr=NULL;
}

void push(int value){
    if(count<sizeof(arr)/sizeof(int)){
        arr[count]=value;
        count++;
    }
}

int peek(){
    return arr[count-1];
}

int pop(){
    int last=arr[count-1];
    count--;
    return last;
}

int is_empty(){
    if(arr== NULL)
        return 1;
    return 0;
}

int print_stack(){
    
    for(int i=count-1;i>=0;i--){
        printf("%d\n",arr[i]);
    }
}
int main(){
    create_array_stack(5);
    push(2);
    push(3);
    push(23);
    print_stack();
}