dynamischer Buffer



  • Hallo,

    habe leider ein Grundlagenproblem in C.
    Ich möchte für einen Mikrocontroller ein Programmm
    zur Kommunikation mit der seriellen Schnittstelle
    schreiben. Dafür brauche ich einen Buffer, der mir
    die entfangenen Bytes erstmal bis zur Verarbeitung
    aufnimmt und mir einen Buffer_overflow anzeigt.

    Dachte das kann ich schon mal mit einem Array machen.

    Buffer[SIZE]

    Aber ist es möglich SIZE auch dynamisch zu machen und
    erst bei einem best. Wert den Überlauf anzuzeigen??
    Wenn ja, wie weis ich wieviele WErte es im Moment gibt
    und wie kann ich sie verschieben??

    for (X=0;x=SIZE-1;x++)

    ???

    Hat jemand eine Beispiel oder eine Idee wie sich das
    leicht verwirklichen läßt.

    Wäre super dankbar!!!

    Stefan



  • Schau dir mal malloc / realloc / free an.



  • imho kannst du da auch vector<>-template benutzen....



  • in C gibts aber kein vector-Template ...

    BTW würd ich sagen, dass dynamischer Speicher auf Microcontrollern nicht ganz so üblich ist wie auf PCs. Gibt es eine Maximalgröße für den Buffer, die sich aus dem Protokoll ergibt?


Anmelden zum Antworten