Korrekter Funktionsaufruf



  • Hallo,

    der Funktion "Transmitsignal" möchte ich eine Variable oder Array übergeben. Über die Adresse der Variable bzw. Arrays soll der Wert in die Funktion FifoPufferIn geschrieben werden.

    Jedoch komme ich gerade nicht klar damit, wie der Funktionsaufruf aussehen soll..

    Hier die Funktion und mein "urspr. Aufruf"

    Variablen:
    camline ist ein array[0:128] vom Typ uint8_t.

    void Transmitsignal ( uint8_t signal , uint32_t length ) {
    for ( uint32_t i = 0 ; i < length ; i++ ) {
    FifoPufferIn(
    (signal+i));
    }
    }

    Transmitsignal((char*)(cam_line) , sizeof(cam_line));

    Mit freundlichen Grüßen
    Dan



  • void Transmitsignal(uint8_t *signal, uint32_t length) {
      for (uint32_t i = 0; i < length; i++) {
        FifoPufferIn(signal[i]);
      }
    }
    
    Transmitsignal(cam_line, sizeof(cam_line));
    


  • void Transmitsignal(uint8_t *signal, uint32_t length)
    {
      while( length-- ) FifoPufferIn(*signal++);
    }
    


  • Hallo zusammen,

    vielen Dank für die schnell Antwort, jedoch zeigt er mir leider nach wie vor folgenden Fehler an:
    "
    C/C++ Error 10145
    data type is incomplete
    The data type, usually a class or structure, is incomplete. "Incomplete
    class" errors usually happen when attempts are made to use classes that have
    been partially declared; as in "forward declarations".

    union U u = { 1 };
    Fix
    Use complete data types.

    union U { int m; } u = { 1 };
    See Also
    "illegal use of incomplete struct/union/class"
    "

    Applikationsbedingt nutze ich Codewarrior 5.9.0

    Bin leider ratlos und weiß nicht woran es scheitert... hat jemand von euch eine Idee?



  • Eine Idee wäre, wenn du nicht stückweise mit deinen Problemen hier aufschlägst, die nichts miteinander zu tun haben.



  • Lass dir nicht alles aus der Nase ziehen. Welcher Typ ist denn unvollständig?


Anmelden zum Antworten