Hilfe bei DV-Hausaufgaben -Please!
-
Hey Leute!
Ist sicherlich nichts großes für euch, aber ich verzweifle hier gleich:
Habe ein Programm geschrieben und die Funktionen in eine zweite Unit gepackt, in die zugehörige Header-Date habe ich die globalen Variablen aufgelistet und die Funktionsnamen definiert. **Hoffe bis dahin ist alles richtig?**
Dann wollte ich eine STRING-Variable ein Char Array packen, das hat ohne Unit und Header-Datei auch bestens geklappt aber jetztHabe folgenden Aufruf benutzt: ::conStr = merker;
(Wobei merker der Char-Array [80] ist und
conStr die globale Variable vom Typ String)
Was ist daran falsch?Bitte um Hilfe und bedanke mich schon Vorraus :p
-
strcpy bei chararrays verwenden
-
Original erstellt von <mag>:
**STRING-Variable ein Char Array packenHabe folgenden Aufruf benutzt: ::String = CharArray;
**Hi,
wolltest du nicht einen String in ein CharArray packen! Da steht aber, dass er das andersrum machen soll! Ansonsten wie schon erwähnt strcpy(destination, source); nehmen!
-
Habe die strcpy verendet, zuerst
habe wie im C++-Beispiel mit einem Zeiger auf das Char-Array gezeigt.
char merker[80];
char *ptrMerker = merker; Richtig?mein verwendendeter Ausdruck sieht folgendermaßen aus:
strcpy(::conStr, ptrMerker);Bekomme allerdings Fehlermeldung..
E2285: Keine Übereinstimmung für 'strcpy(string,char *)' gefunden.und jetzt?
-
Alex hatte da leider auch unrecht. Was du machen musst ist mit dem Konstruktor von String ein temproäres String-Objekt erstellen: String(ptrMerker) soviel ich weiss hat String (was IMHO nur ein typedef auf AnsiString ist) einen passenden Konstruktor.
-junix
-
Hey junix!
Danke für deine Antwort! Aber leider klappt es noch immer nicht..
Der srting bekommt keinen Wert überliefert, das Programm startet aber..
Wenn ich den globalen String ausgeben möchte, erhalte ich Zufallszeichen..
Wie muss die korekte Syntax unter den jetzigen Vorraussetzungen lauten:JETZT: Hauptprgramm in con_in.cpp geschrieben, Funktionen in eigene.cpp und globale Variablen, sowie Funktionen definiert in eigene.h
VORHER: Alles in der con_in.cpp
//Übergabe merker an con_str
::conStr = merker; -> war kein Problem, WARUM JETZT
-
sorry für den -intern- Thread! im Chat haben wir den Code korrigiert und sind auf folgenes Problem gestoßen: die eigene.cpp Datei wird gar nicht kompiliert und daher kommen die Linkerfehler. Was kann man dagegen tun?