fork download
  1. #include<stdio.h>
  2. #include<string.h>
  3. #include<stdlib.h>
  4.  
  5. struct data{
  6. char key;
  7. struct data *next;
  8. };
  9.  
  10. void print_stack_list(struct data *top);
  11.  
  12. int main()
  13. {
  14. struct data *top, *cur;
  15.  
  16. top = (struct data*)malloc(sizeof(struct data));
  17. if(top == NULL){printf("メモりが確保できませんでした。\n"); return 1; }
  18. cur = top;
  19. top->key = 'a';
  20. top->next = (struct data*)malloc(sizeof(struct data));
  21. if(top->next == NULL){printf("メモりが確保できませんでした。\n"); return 1; }
  22. top = top->next;
  23.  
  24. top->key = 'b';
  25. top->next = (struct data*)malloc(sizeof(struct data));
  26. if(top->next == NULL){printf("メモりが確保できませんでした。\n");
  27. return 1; }
  28. top = top->next;
  29.  
  30. top->key = 'c';
  31. top->next = NULL;
  32. top = cur;
  33.  
  34. print_stack_list(top);
  35.  
  36. return 0;
  37. }
  38.  
  39. void print_stack_list(struct data *top)
  40. {
  41. while(top !=NULL)
  42. {
  43. printf("%c\n",top->key);
  44. top = top->next;
  45. }
  46. }
  47.  
Success #stdin #stdout 0.01s 1808KB
stdin
Standard input is empty
stdout
a
b
c