[c] converttostring

Padawan

Erfahrenes Mitglied
Hallo Leute,
ich soll eine eine Funktion schreiben, der den Benutzer auffordert die Dauer eines Lieds einzugeben. Der Format soll in Stunde, Minute und Sekunde (h:m:s) oder m:s eingegeben werden.
Aus dieser Zeichenkette soll anschließend die Stunde, Minute und Sekunde herausgefiltert werden.
dabei soll ich,
C:
convertStrToTime
verwenden. Mir ist zu Ohren gekommen, das dies in der Bibliothek
C:
#inlude <string>
vorhanden sein soll.
Mich würde freuen, wenn jemand sagen könnte was diese Funktion macht bzw. woher ich es rauskriegen kann. Gegoogelt habe ich schon, aber nichts nützliches gefunden.

Lg Padawan
 
Das ist keine Funktion der Standardbibliothek. Übrigens musst du dich entscheiden, ob du C oder C++ verwendest. Im Titel schreibst du C, aber du verwendest den Header string. In C heisst der Header string.h und beinhält auch andere Funktionalitäten als der C++-Header string.
 
ich verwende schon c in codeblocks mit dem GNU C, hatte jedoch bis jetzt den
#include <string.h> verwendet. :)

Lg Padawan
 
Hi,
noch eine frage,
hab die Folgende Funktion erstellt:
C:
char getTime("-> Bitte Geben Sie den Dauer des Liedes ein (Format hh:mm:ss oder mm:ss)", TTime *zeit)

....

char getTime(Text, *zeit)
{
    //Definitionen
    char Input[20];   //für die Benutzereingabe

    //Eingabeaufforderung
    printf(Text);
    scanf("&[0123456789:]", Input);
}

Die Parameter bei der Deklaration,
C:
TTime *zeit
ist dabei unwichtig.

  • error: syntax error before string constant
Es bezieht sich auf die Zeichenkette als Parameter in der Deklaration, kann mir jedoch keinen Reim daraus machen. Soweit ich weiß müsste man doch Zeichenketten als Parameter übergeben können.

Würde mich freuen, wenn ihr mir helfen könntet.

Lg Padawan
 
Hi Padawan,

Ich verstehe nicht ganz, was die folgende Zeile tun soll:
C:
char getTime("-> Bitte Geben Sie den Dauer des Liedes ein (Format hh:mm:ss oder mm:ss)", TTime *zeit)

Ist das eine Vorwärtsdeklaration der Funktion oder ist das ein Aufruf? Momentan ist es irgendwo so eine Mischung von beidem.

/Edit:
Ausserdem wär es noch gut, wenn du angeben würdest welchen Compiler mit welchen Flags duverwendest. Je nach dem sieht es natürlich syntaktisch bisschen anders aus.

Gruss
Muepe
 
Hi Muepe,

C:
char getTime("-> Bitte Geben Sie den Dauer des Liedes ein (Format hh:mm:ss oder mm:ss)", TTime *zeit)
ist ein funktionsdeklaration. Dem wird halt eine Zeichenkette als erstes Parameter übergeben.

Ich verwende Codeblocks bzw. den GNU GCC Compiler.

Grüsse
Padawan
 
Hi,

Bei einer Funktionsdeklaration werden keine Parameter übergeben. Du kannst für einen Parameter einen Standardwert definieren, aber keine Parameter übergeben.

Gruss
Muepe
 
Also ich bin zwar selbst erst Anfänger in C, aber soweit ich das verstehe, sollte in der 5.Zeile "Text" ja ein String sein oder?
Wenn ja, du kannst den String nicht in eine Variable verpacken. Entweder Array oder Zeiger verwenden.
 
Zuletzt bearbeitet:
Zurück