ich bin jetzt mittlerweile bei der Dateiverarbeitung angekommen, nun hab ich ein paar Fragen dazu. Doch zunächst mal der Code:
Code: Alles auswählen
#include <stdio.h>
#define TITEL printf("\n\nvon Dennis Brenzel,2012\n\n");
int main(void)
{
    char string[]="Das ist ein Test.";
    int size=0, search=0 ,i=0 ,zaehler=0;
    FILE *file = fopen("datei2.txt", "w");
    printf("\n%s",string);
    for(size=0;string[size]!='\0';size++)
    {};
    for(search=0;string[search]!='\0';search++)
    {
        if(string[search]=='e')
        {
            zaehler++;
        }
    }
    printf("\n\nDer String ist %i Bytes lang.\n",size);
    printf("\nEs gibt in diesem String %i 'e'.\n\n",zaehler);
    for(i=0; i<size; i++)
    {
		fputc(string[i], file);
	}
	fclose(file);
    TITEL;
    return 0;
}
- Kann ich das mit dem Datei öffnen so machen, wie oben beschrieben, oder ist das stylistisch nicht in Ordnung? Also das ich lieber die Datei erst öffne, wenn diese auch gebraucht wird?
- Da ich mich zusätzlich noch mit der dynamischen Speicherverwaltung beschäftige, wollte ich fragen, ob es Sinn macht, hier vorher einen Speicher für den String zu reservieren?
Danke im vorraus
Edit by Xin: Betreff geändert von 'Kleine Frage zur Dateiverarbeitung'


 . Klar, hier steht ja die Größe vor dem compilieren schon fest. Bei einer Eingabe würde das natürlich mehr Sinn machen. Gibt es irgendwie eine Art "Regel" bei der man sagt, man sollte ab der und der Größe Speicher reservieren, oder hält man das im Allgemeinen so, dass man, sobald ein String variabel wird, sowieso immer Speicher (dynamisch) reserviert? Oder was wäre gescheiter?
 . Klar, hier steht ja die Größe vor dem compilieren schon fest. Bei einer Eingabe würde das natürlich mehr Sinn machen. Gibt es irgendwie eine Art "Regel" bei der man sagt, man sollte ab der und der Größe Speicher reservieren, oder hält man das im Allgemeinen so, dass man, sobald ein String variabel wird, sowieso immer Speicher (dynamisch) reserviert? Oder was wäre gescheiter?

