Prototypen, Rückgabewerte



  • Bin gerade bei den Prüfungsvorbereitungen und habe da mal eine Frage.....

    Gegeben sind folgende Protypen von Funktionen:

    a) void init (void);
    b) struct point lese (struct point *liste);
    c) int *bereich (int anzahl);
    d) int suche (char *k[], char z);
    e) char **finde (int zeilen, int spalten);
    f) void init (void)
    g) [struct element] lese (strukt element * liste) ;
    __________ |- Name der Fkt___ |- „Datentyp“

    h) void * bereich (int anzahl);
    i) int test (char * text [], char z);
    j) char ** finde (int Zeilen, int Spalten);

    Welche Parameter verlangen diese Funktionen und welche Rückgabewerte liefern sie? Der Ablauf der Funktion ist noch nicht näher bestimmt.

    meine Lösung:
    Rückgabewert ------Parameter
    ------------------------------
    a)keiner------------- keine
    b)?------------------ ?
    c)int---------------- int (anzahl)
    d)int---------------- char pointer auf Array, char z
    e)char--------------- int zeilen, int spalten
    f)keine-------------- keine (wie a))
    g)?------------------ ?
    h)keine-------------- int Anzahl
    i)int---------------- char pointer auf Array text, char z
    j)char--------------- int Zeilen, int spalten

    Ich bin an der Lösung der Aufgaben interessiert, möchte aber auch verstehen, warum das so ist.



  • ich würde an deiner stelle noch ein wenig lernen 🙂



  • Lern noch mal ein bisschen 🙄

    int* ist nicht gleich int!
    void* bedeutet auch etwas ganz anderes als void!

    Und was Strukturen sind, solltest du dir auch noch einmal anschauen.





  • Vielen Dank für die schnelle, mir aber doch schon bekannte Antwort!
    Ich lerne doch schon und versuche zu Verstehen.
    Deshalb frage ich doch die Experten!

    (Wenn das hier ein Forum für Könner ist, dann ziehe ich meine Frage zurück.)



  • danke fricky...

    das geh ich jetzt mal durch und werde dann die Aufgaben nochmal lösen.



  • ich versuchs nochmal:

    a) void init (void);
    Deklaration der Funktion init ohne Parameterübergabe, es gibt auch keinen Rückgabewert
    
    b)struct point lese (struct point *liste);
     Rückgabewert ist eine Struktur point , Parameter ist der Zeiger auf liste in der Struktur point
    

    bis dahin richtig?



  • Parameter ist ein Zeiger auf eine Struktur vom Typ "point" mit dem namen "liste"
    

    fixed.

    sag mal ehrlich, wie lange beschäftigst du dich schon damit? 🙂



  • eigentlich schon eine ganze Weile....

    haben aber immer nur einfachere Programme geschrieben (Strukturen waren aber auch dabei, Zeiger leider weniger)



  • Parameter ist ein Zeiger auf eine Struktur vom Typ "point" mit dem namen "liste"
    
    also ist der Parameter ein Zeiger der liste heisst und auf eine Struktur vom Typ point zeigt
    

    so ist das richtig?



  • d) int suche (char *k[], char z);
    
    Rückgabewert ist vom Datentyp Int und Parameter sind: ein Zeiger auf einen Vektor vom Datentyp char und eine Variable z vom Datentyp char
    


  • nachbarheinz schrieb:

    d) int suche (char *k[], char z);
    

    Rückgabewert ist vom Datentyp Int und Parameter sind: ein Zeiger auf einen Vektor vom Datentyp char und eine Variable z vom Datentyp char

    leider nicht ganz richtig. parameter sind: ein vektor vom datentyp char* und eine variable vom datentyp char.
    🙂



  • wie ein vektor???
    sind vektoren nicht hauptsächlich aus C++???

    naja aber das hier

    d) int suche (char *k[], char z);
    

    ist doch eigendlich eine funktion die eine ganze zahl wieder gibt und einen einfachen character und ein zweidimensionales array übergeben bekommt?!!?!!!

    sprich man sucht in einer liste von worten nach einem buchstaben
    wobei es eher was bringen würde wenn man gleich nach ganzen worten sucht oder halt nach zeichenfolgen



  • Skym0sh0 schrieb:

    wie ein vektor???
    sind vektoren nicht hauptsächlich aus C++???

    ein Vektor im Sinne von einem Feld/Array und nicht im Sinne von std::vector<datentyp>



  • Skym0sh0 schrieb:

    wie ein vektor???
    sind vektoren nicht hauptsächlich aus C++???

    nö, in mathe und physik gibts auch vektoren und sicher auch anderswo. vektor ist z.b. ein anderer begriff für 'array'.

    Skym0sh0 schrieb:

    naja aber das hier

    d) int suche (char *k[], char z);
    

    ist doch eigendlich eine funktion die eine ganze zahl wieder gibt und einen einfachen character und ein zweidimensionales array übergeben bekommt?!!?!!!

    wo siehst du da ein zweidimensinales array? das würde so aussehen: k[][]
    🙂


Anmelden zum Antworten