如何手動給Docker容器設定靜態IP
阿新 • • 發佈:2022-04-28
#include <stdio.h> #include <stdlib.h> #include <malloc.h> #define MAXSIZE 50 typedef struct stack_Inilt { int *base; int *top; int length; } stack; void initStack(stack *s) { s->base = (int *)malloc(sizeof(int) * MAXSIZE); if (!s->base) exit(0); s->top = s->base; s->length = MAXSIZE; } int stackEmpty(stack *s) { if (s->base == s->top) return 1; else return 0; } int stackLength(stack *s) { return s->top - s->base; } int clearStack(stack *s) { if (s->base) { s->top = s->base; return 1; } } int destroyStack(stack *s) { if (s->base) { free(s->base); s->length = 0; s->base = s->top = NULL; } if (s->base == NULL) { return 1; } } void push(stack *s, int e) { if (s->top - s->base == s->length) { printf("stack is full\n"); return; } else { *(s->top) = e; s->top++; } } int pop(stack *s, int *e) { if (s->top - s->base == 0) { printf("stack is empty\n"); return 0; } else { *e = *(--s->top); } return *e; } void printStack(stack *s) { int *p; p = s->base; if (s->top - s->base == 0) { printf("stack is null\n"); return; } else { while (p != s->top) { printf("%d->", *p); p++; } printf("\n"); } } int main() { stack s; initStack(&s); int e; printf("十次入棧:\n"); for (int i = 0; i < 10; i++) { push(&s, i); } printStack(&s); printf("stack length:%d\n", stackLength(&s)); printf("五次出棧\n"); for (int i = 0; i < 5; i++) { pop(&s, &e); } printStack(&s); printf("stack length:%d", stackLength(&s)); return 0; }