login  Naam:   Wachtwoord: 
Registreer je!
 Tutorials

Tutorials > C++


Gegevens:
Geschreven door:
Wave6
Moeilijkheidsgraad:
Normaal
Hits:
8928
Punten:
Aantal punten:
 (3)
Aantal stemmen:
2
Stem:
Niet ingelogd
Nota's:
 Lees de nota's (3)
 



1.4 einde
Dit was dan alweer het einde van mijn tutorial ik hoop dat jullie er wat aan hebben gehad.zo niet pm me dan maar © D_O Wesley vd Meer

Tutorial:

C++ strings, arrays,OOP.

  1. Strings
  2. Arrays
  3. OOP
  4. einde

1.1 Strings
Even een korte inleiding wat strings betreft. Strings in C++ is niet zo gemakkelijk als bijvoorbeeld in PHP of Python.
In C++ moet je aangeven hoeveel karakters je zin heeft bijvoorbeeld.
Ook dit is niet altijd nodig maar als we eenmaal verder in het script zijn aangekomen.

Nou laten we maar gelijk beginnen met een voorbeeld dan kun je zien hoe ik het bedoel.


  1. #include <iostream> //de header voor cin, cout, cin.get en cin.getline();
  2. #include <string.h> //de header voor strcpy, strcat en strcmp.
  3.  
  4. using namespace std; //Elke header maakt hier gebruik van.
  5.                      //Dus ben jij genoodtzaakt dit ook te doen!.
  6.  
  7. int main()           //de hoofd functie.
  8. {
  9.  char string_1[80]; // de declareren met 80 karakters
  10.  
  11.     cout <<"geef een waarde aan string_1 (WEL WOORDEN GEEN INTEGERS!):" <<endl <<endl; //
  12.     cin.getline (string_1,80); // cin.getline is een nieuwe die we gaan bespreken in de uitleg
  13.     cout << string_1 <<endl <<endl; //de ouput van de string!
  14.  
  15.    cin.get();
  16.  
  17.  return 0;
  18. }

1.1 Uitleg
Je ziet nu een aantal veranderingen vergleken met mijn vorige c++ tutorials en dan het char gedeelte.
De nieuwe commands zijn.
  • cin.getline();
  • de header string.h

  • Laten we is gaan kijken naar cin.getline Normalieter is het zo dat als je een karakter declareerd met
    de command cin dan kan je maar 1 letter of cijfer declareren.
    Maar zoals je hieronder ziet declareren we de string met 80 karakters. dus betekent dat je 80 cijfers of letters kan ingeven.
    Maar er staat dan wel 80 maar het zijn er 79 want hij telt de afsluit byte ook nog mee als teken.

    1. cin.getline (string_1,80);

    Nou om nu die karakters in te voeren in die string gebruik je het command cin.getline();
    Nu gaan we het opvragen met de command cout dat op vragen kan op verschillende manieren.
    Maar dat is iets voor later. maar ik kan natuurlijk wel een voorbeeldje geven.
    en dat is met een for Loop.


    1. #include <iostream> //header voor cin.get();,cout en cin
    2. #include <string.h> // header voor strings
    3. using namespace std;
    4.  
    5. int main() //hoofdfunctie
    6. {
    7.  char woordje[20]="hallo wereldje"; //char woordje[20] is gedeclareerd met Hallo wereldje;
    8.  
    9.  for(int i=0; i<20; i++) //hier een voorbeeld van de loop
    10.  //hier staat letterlijk int i is 0; i is kleiner als 20; verhoog var i met 1;
    11.  {
    12.  cout <<woordje[i]; //en hier vragen we de string weer op met de loop die we net gemaakt hebben.
    13.  }
    14.  cin.get(); //wacht op een willekeurige input.
    15.  return 0; //sluit het programma weer af
    16. }

    Het is zeker niet een van de makkelijkste manieren. Maar wel het mooist.LET OP!!nu zien we wel dat de string 20 karakters
    kan bevatten. Maar als je eenmaal naar het programma kijkt zul je zien
    dat de cursor een aantal spaties verder op staat.
    Dit is zeker te verhelpen met de command strlen(); maar dat is iets voor later. Je weet nu in ieder geval
    Hoe je strings moet maken. Althans dat hoop ik!

    1.2 Arrays
    Nu zijn we aangekomen op het gebied arrays. Arrays zijn altijd nog het meest gebruikt in bijna elke programmeertaal.
    Een array moet je zien (tenminste zo zie ik het) als een grote doos waar allemaal kleinere doosjes in zitten
    In die doosjes zitten briefjes met woordjes functies of getalletjes.
    ok laat ik maar gelijk gaan beginnen met een voorbeeld.


    1. #include <iostream> //header voor cout en cin
    2. #include <stdlib.h> //header voor standard library
    3.  
    4. using namespace std;
    5.  
    6. int main()
    7. {
    8.  
    9.     int array[10]; // hier zeg ik dat ik 10 arrays wil hebben.
    10.                    // je had ipv array ook een andere naam kunnen geven.
    11.                    // bijv test[10].
    12.         array[0] = 1; //hier geven we array[0] de waarde 1.
    13.         array[1] = 2;
    14.         array[2] = 3;
    15.         array[3] = 4;
    16.         array[4] = 5;
    17.         array[5] = 6;
    18.         array[6] = 7;
    19.         array[7] = 8;
    20.         array[8] = 9;
    21.         array[9] = 10;
    22.    
    23.     cout << array[1]; // hier zeg ik dat ik de waarde van array 1 wil zien
    24.                      // Geeft als resultaat 2
    25.   cin.get();
    26.  return 0;
    27. }

    Je kunt het ook nog allemaal veel makkelijker en sneller doen. Alleen is het iets minder overzichtiger.

    1. #include <iostream> //header voor cout en cin
    2. #include <stdlib.h> //header voor standard library
    3.  
    4. using namespace std;
    5.  
    6. int main()
    7. {
    8.  
    9.     int array[] = {1,2,3,4,5,6,7,8,9,10}; // nu past ie automatisch de groote van de array aan!
    10.    
    11.    
    12.     cout << array[1]; // hier zeg ik dat ik de waarde van array 1 wil zien
    13.                      // Geeft als resultaat 2
    14.   cin.get();
    15.  return 0;
    16. }

    Maar als je met het bovenstaande voorbeeld werkt is het best handig om te weten hoe groot de array nou is.
    En dat kun je doen met de command sizeof();
    1. #include <iostream> //header voor cout en cin
    2. #include <stdlib.h> //header voor standard library
    3.  
    4. using namespace std;
    5.  
    6. int main()
    7. {
    8.  
    9.     int array[] = {1,2,3,4,5,6,7,8,9,10}; // nu past ie automatisch de groote van de array aan!
    10.     int grootte = sizeof(array)/sizeof(int); //hier vraag ik naar de grootte van de array
    11.    
    12.     cout <<"De array bevat "<< grootte <<" plaatsen"; //en hier laat ie het zien.
    13.   cin.get();
    14.  return 0;
    15. }

    Zo dat was dat vrij simpel toch?
    1.3 OOP
    Nu even een klein voorbeeldje van hoe je OOp kan toepassen in C++.
    Mocht het je nou niet lukken vrees dan niet want het is niet echt iets voor een beginner.
    Maar dit is nog een vrij simpel voorbeeldje.

    Hier voor gebruiken we de header fstream
    Ik begin gewoon met een voorbeeldje.
    1. #include <fstream> //de header om bestanden te kunnen maken.
    2. #include <iostream>//de header voor cin.get();
    3. using namespace std;
    4.  
    5. int main()
    6. {
    7. fstream mijnbestand; //Een bestand aanmaken
    8.  
    9. mijnbestand.open("lijst.txt", ios::out);//naam van het bestand en extensie
    10. //ios::out staat voor input-output stream out. dus met andere woorden
    11. //slaat die dat programma op, op je harde schijf.
    12. //in de map waar jij je script opgeslagen heb.
    13. mijnbestand << "Hallo, dit is een tekstbestand! Ik heb dit met een programma weg geschreven...";
    14. //dit komt in het document te staan.
    15. mijnbestand.close(); //deze sluit het af en zorgt dat het bestandje opgeslagen word.
    16.  
    17. cin.get();
    18.  
    19. return 0;
    20. }

    1.3 uitleg
    Wat je hier boven ziet een een programmatje die een een bestandje aanmaakt dat lijst.txt heet.
    en hij schrijft in dat bestand Hallo, dit is een tekstbestand! Ik heb dit met een programma weg geschreven...
    Het is het proberen waard!
    Maar nu de uitleg je ziet daar de header fstream staan. die header zorgt ervoor. dat je kan
    verbinden met bestanden van buitenaf.
    daarvoor heb je het command fstream mijnbestand; dat mijnbestand is eigenlijk alleen maar een
    Variabele naam. En lijst.txt is de naam van het bestand dat aangemaakt wordt
    en dat gebeurd met de command mijnbestand.open("lijst.txt", ios::out);
    en dan zien we de command mijnbestand <<"bla bla bla";dit zorgt ervoor
    dat de tekst in het bestand komt te staan.
    dan hebben we nog mijnbestand.close();dit zorgt ervoor dat het bestand afgesloten en opgeslagen word
    ALS HET BESTAND AL BESTOND WORDT HET OVERGESCHREVEN!

    Ik wou nog even verder gaan op het laatste gedeelte van mijnbestand.open("lijst.txt",ios::out);
    van dat ios::out zijn verschillende varianten.zie hier onder

  • ios::in //met deze kun je het bestand lezen
  • ios::out //met deze kun je in het bestand schrijven
  • ios::app //toevoegen aan het bestand en aan het einde beginnen met schrijven
  • ios::nocreate //zorgt ervoor dat het als het bestand al bestaat dat het dan niet overgeschreven word


  • Wil je meer van die modussen gebruiken dan scheid je die door een seperator in te voeren zo dus
    1. mijnbestand.open("lijst.txt",ios::out | ios::nocreate);

    « Vorige tutorial : C++ basis tutorial Volgende tutorial : C++ Pointers »

    © 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.017s