feldgröße durch eingabe



  • ich weiß net irgendwie klappt heute nichts mehr.

    wenn ich ein feld anlegen möchte mit X Feldelementen und X erst durch Eingabe im Programmablauf eingeben will wie muss ich das machen?

    ich hab es mal so versucht zu lösen:

    int feldgroesse;
    char feld[feldgroesse];

    aber das will er nicht da er sagt das die größe nicht bekannt sei.
    Irgendwie ist das doch ganz einfach zu lösen oder nicht?



  • streamilein schrieb:

    Irgendwie ist das doch ganz einfach zu lösen oder nicht?

    Allerdings 😉

    int main() 
    {
      int feldgroesse; 
      char *my_Array = new char[feldgroesse]; 
    
      // ...
    
      delete[] my_Array; //Die [] sind bei Feldern verbindlich!!!
    
      return 0;
    }
    


  • std::vector<char> feld(feldgroesse);



  • danke noch folgende Frage.

    ich hab folgenden Code geschrieben

    #include <iostream>
    #include <string>
    #include <fstream>
    using namespace std;
    
    int main()
    {
    	int zahl;
    	int feldgroesse;	
    
    	cout << "Geben Sie die Anzahl der Feldelemente an: " << endl;
    	cin >> feldgroesse;
    	int *feld = new int[feldgroesse]; 
    
    /*	for(int i=0; i< feldgroesse; i++)
    	{
    		cout << "Geben Sie eine Zahl ein: " << endl;
    		cin >> zahl;
    		feld[i] = zahl;
    	};
    
    	for(int j=0; j<feldgroesse; j++)
    	{
    		cout << "Zahlausgabe: " << endl;
    		cout << feld[j] << endl;
    	};
    	*/
    
    	ifstream datei ("test.txt");
    	char tmp[128];
    	for(int i=0; i<feldgroesse; i++)
    	{
    
    		while (!datei.eof()) 
    		{ 
    			feld[i] << datei.getline(tmp,128);
    		};
    	};
    
    	return 0;
    }
    

    wieso kann er jetzt bei feld[i] << datei.getline(tmp,128);
    den eingelesenen wert aus der Datei (sind alles zahlen aus einer txt datei) in das feld an der position i schreiben. Er bringt immer Fehlermeldung

    binary '<<' : no global operator defined which takes type 'class std::basic_istream<char,struct std::char_traits<char> >' (or there is no acceptable conve



  • Hallo,

    siehe hier:
    http://www.c-plusplus.net/forum/viewtopic.php?t=93499

    Am besten immer nur eine Frage pro Thread......


Anmelden zum Antworten