fork download
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. #define ZEICHEN_MAX 42
  5.  
  6. typedef struct {
  7. char* zeichen; // das vorkommende Zeichen
  8. int zaehler; // wird inkrementiert bei mehrfachem vorkommen
  9. struct Knoten* zeiger[ZEICHEN_MAX]; //Array von Zeigern auf die nächsten Arrays
  10. } Knoten;
  11.  
  12. void head_initialisieren(Knoten* kopf){
  13. int i;
  14. kopf = (Knoten*) malloc(sizeof(Knoten));
  15. kopf->zaehler=0;
  16. kopf->zeichen=NULL;
  17. for(i=0;i<ZEICHEN_MAX;i++){
  18. kopf->zeiger[i]=NULL;
  19. }
  20. }
  21.  
  22.  
  23. Knoten* einfuegen(char *c){
  24. int i;
  25. Knoten *neu;
  26. neu =(Knoten*) malloc(sizeof(Knoten));
  27. neu->zaehler=0;
  28. neu->zeichen=c;
  29. for(i=0;i<ZEICHEN_MAX;i++){
  30. neu->zeiger[i]=NULL;
  31. }
  32.  
  33. return neu;
  34. }
  35.  
  36. void baum_entfernen(Knoten* kopf){
  37. int i;
  38. Knoten* temp;
  39. for(i=0;i<ZEICHEN_MAX;i++){
  40. if(kopf->zeiger[i]!= NULL){
  41. temp = kopf->zeiger[i]; // Hier gibts dann ne Warnung für das assignment
  42. baum_entfernen(temp);
  43. }
  44. }
  45. free(kopf);
  46. }
  47.  
  48. int main() { return 0; }
  49.  
Success #stdin #stdout 0s 2244KB
stdin
Standard input is empty
stdout
Standard output is empty