Anwendung von void*



  • Hi,

    ich bin grad dabei ein Programm mit LPT1 Zugriff zuschreiben, dazu schreib ich grad den Code von Unix-Tom von der Seriellen Schnittstelle um. Dabei ist mir der Nutzen, die Initailisierung und Verwendung von void* nicht klar. Leider hab ich grad meine Bücher verliehen, daher die Frage an euch.

    Wie kann ich folgende Funktion sinnvoll nutzen und wie muss void* initailisiert werden (am Besten mit Code).

    Code:

    //holt Daten von der seriellen Schnittstelle
    int CSERIELL::Receive(void *puffer, int len)
    {
        DWORD receive=0;
        if(m_hPort !=0 && len >0)
        {
            ReadFile(m_hPort, puffer, len, &receive, NULL);
        }
        if(receive==0)
    
        return receive;
    }
    

    Danke.

    So long

    tobias

    God bless you



  • Fordere dir Speicher an.

    void* pArray = reinterpret_cast<void*>(new BYTE[2000]);
    int ret = CSERIELL::Receive(pArray, 2000)
    

    Und dann benutze bitte kein void* sondern ein BYTE-Array oder so.

    BYTE array[2000];
    int ret = CSERIELL::Receive(&array, 2000)
    

    Dazu musst du aber Recieve umschreiben...


Anmelden zum Antworten