Problem mit Feldern



  • also ich mach das so das ich mir eigenen problemstellungen gebe

    zb addiere 2 zahlen oder subtrahieren

    oder schau nach algorithmen zur primzahlzerlegung oder pruefung usw

    das kann man von anfang an, doch mit vorranschreitendem wissen verfeinert man das ganze (zb so dass man zeiger uebergibt um die zahlen nur einmal erzeugen zu muessen)

    zb auf beliebig grosse zahlen da kommen dann solche sachen wie dynamische arrays

    ,wie man sie in vb nennt und in c eigentlich mit verketteten listen realisiert,

    mit rein

    ich wuerde da mit kleinen sachen anfangen und zur pruefung ob du richtig liegst brauchste ja nur dein ergebnis ueberpruefen 😉



  • Hi!

    naja mit solchen Aufgaben hab ichs auch scho probiert... aber langsam gehn mir die ideen aus 😞 naja ich hab mir daweil die Aufgabe gestellt ein Schiffe versenken zu programieren... was bei meinen Programmierkenntnissen ganz schön schwer is... leider kann ich noch ned irgendwie grafisch programmieren also muss halt ein 2D Array her...
    mal sehn ob was draus wird 🙂

    mfg Cheffe


  • Mod

    Power Off schrieb:

    In C++ hat man versucht, das Problem zu minimieren, indem man Referenzen eingefuehrt hat. Eine Referenz ist ein Zeiger, der immer initialisiert sein muss, und der immer auf eine bestimmte Adresse zeigt.

    eine referenz kann durch pointer implementiert sein, sie ist aber keiner. und es gibt objekte, die keine adresse haben (z.b. registervariablen) - einen pointer darauf kann man nicht erstellen (was dazu führt, dass das betreffende objekt im speicher angelegt werden muss, wenn man bezug auf seine adresse nimmt), eine referenz dagegen schon.



  • hmm und wie deklariere ich einen pointer und wie eine Referenz? gibts da nen unterschied?

    mfg Cheffe



  • int a = 5; // int-varibale (wert 5)
    int* i;    // zeiger auf int
    i = &a;    // zeiger auf adresse von 'a'
    

    sollte sich hier in fehler eingeschlichen haben, kritisiert mich ruhig 😉

    //edit: berichtigt



  • enno-tyrant schrieb:

    sollte sich hier in fehler eingeschlichen haben, kritisiert mich ruhig 😉

    die letzte kommentarzeile oder der dazugehörige code ist verkehrt.



  • "&" als unaerer Praefix-Operator (also mit einem Operand) nennt man "address of" Operator (also "Addresse von" Operator), "&x" bezeichnet die "Adresse von x".

    "&" als Typ-Qualifizierer (unaerer Postfix-Typ-Operator) nennt man "reference to" Operator oder Qualifier. "int&" bezeichnet "Referenz auf int", so wie "int*" "Zeiger auf int" bezeichnet. Am besten ist, man liest solche Typen von rechts nach links.

    🙂



  • uiuiui jetzt kann ich auchnoch anfangen von rechts nach links zu lesen... was man nicht alles fürs programmierenlernen tut^^

    kann mir bitte mal wer zeigen wie genau man einen zeiger deklariert? wär nett 🙂

    mfg Cheffe



  • au blödsinn!! ich meinte:
    wie man ne Referenz deklariert... sry

    mfg Cheffe 🙂



  • garnicht

    jede variable hat ne addresse mit ner referenz uebergibt man diese



  • sry total quatsch 😉

    zb

    int &referenz;
    

    edit:
    referenz ist jetzt aber nur ne addresse auf int wenn du sie nicht mit einer variablen initialisierst existiert diese addresse aber nicht

    zb

    int blah;
    int &referenz = blah;
    


  • kannte das bis jetzt nur als uebergabe an eine funktion

    aber selbst da wird sie ja als ueberga deklariert



  • ok dange 😃

    mfg Cheffe 🙂



  • Vertexwahn schrieb:

    #include <iostream>
    using namespace std;
    
    int main()
    {
    	cout<<"Wie gross soll das Array werden? "; 
    
    	int Summe = 0;
    
    	int ArraySize  = 0;
        cin>>ArraySize;
        int* Array = new int[ArraySize];
        
    	for(int i = 0; i < ArraySize; i++)
    	{
    		cout<<"Geben Sie das "<<i+1<<"te"<<" Element ein: ";
    		cin>>Array[i];
    
    		Summe = Summe + Array[i];
    	}
    
    	cout<<"Die Summe ist: "<<Summe<<endl;
    
    	delete[] Array;
    }
    

    ich hab gelernt, dass die größe von feldern schon zur kompilierzeit bekannt sein muss...wundert mich, dass das auch so geht



  • Wie denn, haben wir schon den 1.4.? 🤡


Anmelden zum Antworten