super schwere Frage !
-
Mist, na gut.
Arbeite nicht unter Windows. So leicht habe ich es leider nicht. Wie kann ich die werte in eine Datei auslagern?
Und wie kann ich sie zurueckholen ?
-
btw. benutze bitte bessere Topics, die etwas über deine Frage aussagen (hier zB. "Wie Programmoptionen speichern?")
-
Schau mal in den FAQ nach, da gibt's mehrere Beiträge zum diesem Thema.
-
Bis jetzt habe ich in einem Programm 5 verschiedene Werte durch eine Define anweisung bestimmt und die benutze ich dann auch im ganzen Programm. Nun, ich moecht
e aber, das man diese aendern kann.#define WERT_EINS 15; #define WERT_ZWEI 20; int main(int anzahl,char argumente[]) { /* ein paar berechungen und ausrufen von verschiedenen Funktionen. */ return 0; }
Aber ich moechte, das man dies WERT_EINS und WERT_ZWEI ueber die arumente aendern kann. Wie ich die auslese weiss ich. Aber ich nicht weiss nicht, wie ich sie nach beenden des Programmes behalten kann und fuer den naechsten Start wieder verwenden kann.
Deswegen -> optione bzw einstellungen
-
defines kannst du gar nicht ändern. Dazu musst du variablen nehmen. Der Rest wurde oben erklärt.
-
OK, nehmen wir Variblen.
Da gibts doch ein Problem. Wie ich in eine Datei schreibe, weiss ich und ist auch ueberall gut erklaert, aber wie hole ich mir die zuweissung dann zurueck ?
wenn ich den befehl
int wert_eins=10;
in eine datei schreibe, wie kann ich ihn zurueck holen und auch ausfuehren ?
-
"kingruedi" hat dir doch guten link zu diesem thema gegeben.
zeig' was du bis jetzt gecodet hast dann wird dir auch weitergeholfen.
-
toom schrieb:
"kingruedi" hat dir doch guten link zu diesem thema gegeben.
zeig' was du bis jetzt gecodet hast dann wird dir auch weitergeholfen.Das ist nicht so einfach, oder willst du dich durch ueber 1000 Zeilen C-Code durcharbeiten ?
Ich brauche doch nur ein kleines Beispiel um das zuverstehen, wie ich in eine externe datei werte uebergebe und dann wieder hole.
Ausserdem nuetzt mir der Link ueberhaupt nichts, da ich das, was da steht schon weiss !
-
Chris233 schrieb:
Ausserdem nuetzt mir der Link ueberhaupt nichts, da ich das, was da steht schon weiss !
Was willst du denn dann wissen?
-
Shade Of Mine schrieb:
Chris233 schrieb:
Ausserdem nuetzt mir der Link ueberhaupt nichts, da ich das, was da steht schon weiss !
Was willst du denn dann wissen?
Meine Frage ist einfach nur, wie kann ich einen Wert A in eine externe datei schreiben und als variable vergeben.
und wenn ich A aufrufe, soll gleich der richtige wert da sein.
Das ist alles.
-
Du bist n bisschen faul, oder?
Speichere zB in diesem Format
name = value
Dann liest du die ganze Datei in zB eine hashmap ein, und machst immer ein
int value=hashmapGetValue("name");um die Werte auszulesen.
Alternativ kann man natuerlich mit XML einen schoenen overkill produzieren
ne, mal im ernst: was ist dir unklar.
dass ein
$str="name"; $name="value"; echo $$str; //gib "value" aus
nicht geht, sollte wohl klar sein, oder?
-
Ich habe 3 Bücher und eine wichtige internetseite gelesen, wo fast alles über c steht und ich habe keine grosse hilfe gefunden.
WIESO BIN ICH DA FAUL ???!!! ??
Ich bin hier im Forum um Hilfe zu finden. Und nicht um stundenlang mir die Zeit tot zuschlagen.
Mein Problem ist ganz einfach. ( Immernoch ) Ich suche es einfache Lösung, werte in eine extern Datei zuschreiben und auch darauf zuzugreifen.
Ich wollte nicht erst die Datei einlesen und dann noch diese Auswerten.
Ich dachte, es gibt da eine Möglichkeit, die ich nicht kenne.
-
Chris233 schrieb:
WIESO BIN ICH DA FAUL ???!!! ??
Ich bin hier im Forum um Hilfe zu finden. Und nicht um stundenlang mir die Zeit tot zuschlagen.
QED.
-
( Immernoch ) Ich suche es einfache Lösung, werte in eine extern Datei zuschreiben und auch darauf zuzugreifen.
Ich wollte nicht erst die Datei einlesen und dann noch diese Auswerten.
Ich dachte, es gibt da eine Möglichkeit, die ich nicht kenne.Wenn du Werte in einer Datei abspeicherst, dann musst du später einmal auch die Datei lesen; sonst hat das gar keinen Sinn.
Bitte versuche dein Problem etwas genauer zu definieren. Willst du so etwas wie eine .ini Datei erzeugen?
Danke
-
Ich weiß auch nicht woran du jetzt scheiterst. Wenn du wirklich so viel über C gelesen hast sollte das kein Problem für dich sein.
Du musst doch einfach nur mit den Befehlen aus dem Link eine Datei erstellen(fopen), die Option die du in einer Variable gespeichert hast in die Datei schreiben(fprintf oder etwas ähnliches), diese beim nächsten Programmstart wieder öffnen(fopen), den Wert auslesen und zurück in die Variable speichern(fscanf oder etwas ähnliches). (Und natürlich fclose nicht vergessen) Eine andere Möglichkeit sehe ich nicht.(Ist ja auch keine andere Möglichkeit nötig)
Und für einen Newbie(mich): Was heißt QED? RTFM hätte ich ja noch verstanden.
-
Jarvis schrieb:
Und für einen Newbie(mich): Was heißt QED? RTFM hätte ich ja noch verstanden.
QED = quod errat demonstrandum (schlagt mich nicht, wenn ich es falsch geschrieben habe ... lang ists her ) zu deutsch: was zu zeigen/beweisen war; wird meist am Ende eines math. Beweises geschrieben.
übrigens war es RTFF wobei das F wohl auch kein Problem darstellen sollte
Gruß XZ59
-
Chris233 schrieb:
Ich habe 3 Bücher und eine wichtige internetseite gelesen, wo fast alles über c steht und ich habe keine grosse hilfe gefunden.
Und keins der Bücher behandelt das speichern und lesen von Dateien?
Kein Buch erwähnt fopen, fclose, fputc, fputs, fprintf, fgets, fgetc, fscanf, strchr, strtok, strcmp?Ein Tip:
Verbrenn die Bücher ganz schnell, vielleicht können sie durch ihren Brennwert noch zu wenigstens etwas zu gebrauchen sein....
-
XZ59 schrieb:
übrigens war es RTFF wobei das F wohl auch kein Problem darstellen sollte
Danke für die Erklärung.(QED)
Und ich habe schon bewusst RTFM geschrieben. Wird wahrscheinlich öfter in Linux-Foren gebraucht.
(M steht dabei für manual(oder evtl. auch für die man-Pages))
-
Chris233 schrieb:
WIESO BIN ICH DA FAUL ???!!! ??
Es ist nicht schlimm, faul zu sein. Es ist schlimm, zu glauben, die anderen wären das nicht.
-
Leute, Leute, Leute.
Versuchen wir es mal anders.
Ich weiss, wie ich etwas in eine Datei schreibe und auch lese, aber das was ich wissen will, weiss ich nicht.
Vielleicht versteht ihr mich nach dem kleinen Programm.#include <stdio.h> #include <string.h> #include <stdlib.h> #include <math.h> #define MAX 20 #define input 20 #define Pi 3.14159265359 #define GRAD 5 #define HOEHE 0.001 #define BREITE 0.001 #define NWINC 5 #define NHINC 5 #define LAY_EINS 0.02 #define LAY_ZWEI 0.04 #define LAY_DREI 0.06 int main(int wieviel , char *argumente[] ) { char *arg1=argumente[1]; char *arg2=argumente[2]; double a=0,b=0; /* jetzt kommen genug Funktionen, struckturen und ausweissungen */ /* und auch berechnungen mit den definierten werten. */ /* wenn der anwender aber die werte aendern will mit den er rechnet und das bei naechsten start noch die gleichen sein sollen, was nun */ /* ach so und natuerlich soll ich ganz einfach damit rechnen wie z.b.*/ a=a+GRAD; b= sqrt(GRAD+BREITE)*pow(GRAD,7); return 0; }
Jetzt klar, was ich will ?