Geschreven door studenten die geslaagd zijn Direct beschikbaar na je betaling Online lezen of als PDF Verkeerd document? Gratis ruilen 4,6 TrustPilot
logo-home
Document preview thumbnail
Voorbeeld 2 van de 15 pagina's
Samenvatting

Samenvatting C en C++ (E761018)

Document preview thumbnail
Voorbeeld 2 van de 15 pagina's

Samenvatting van slides + codevoorbeelden

Voorbeeld van de inhoud

C en C++
C
1. Basisconcepten C
• Conditionele uitdrukking
o A = b > 0 ? 1 : -1
• Switch
Switch(score) {
Case 12: case 13: case 14:
Resultaat = ‘A’
Break;
Case 15: case 16
Resultaat = ‘B’
Break;
Default:
Resultaat = ‘D’;
}
Uitvoer en invoer
• Printf(“test %d”, getal)
• Scanf(“%d”, &getal)
• Inputbuffer legen
o While(getchar() != ‘\n’)
Arrays
• Variabele die meerdere geheugenplaatsen bevat
• !! grootte van array moet een getalconstante zijn -> geen variabele
o Int getallen[8]
o #define MAX 8
o Int getallen2[MAX]
• Grootte van array berekenen
o Sizeof(naam)/sizeof(type)
• Arrays zijn pointers
• Declaratie
o Int i[6] = {1,2,3,4,5,6}
• Als functieparameter
o Void verdubbel(int [], int)
• Grootte moet steeds specifiek meegegeven worden
o Er bestaat geen length functie
• Resultaat van functie kan geen array zijn, wel pointer
• Adres van array wordt meegegeven als argument
o Functie kan inhoud van array wijzigen
o Dit vermijden -> const toevoegen
o Void kopieer(const int[])
2. Pointers
• Wijzen naar bepaald gegeven
o Int *p = &g
o *p = 9 // g wordt 9
o (*p)++ //g wordt 10
o *p *= 2 //g wordt 20
o Printf(“*p=%d p=%p &p=%p”, *p, p, &p) //waarde g, adres g, adres p
• Nullpointer = pointer die naar nergens wijst
o Double *p
o P = 0 of p = NULL
o If(p) {} //kijken of pointer naar ergens wijst
o !! nullpointer niet derefereren
• Voidpointer

1

, o Void *v
o Niet derefereren maar eerst casten naar geschikte pointer
o Printf(“*v=%f”, *(double *)v)
• Call by reference
o Geef adressen van variabelen mee
o Kopieën vermijden
o Tegengestelde(&i)
o Void tegengestelde(int *a){ *a *= -1 }
Pointers en arrays
• Arraypointer is een constante pointer naar 1e element van de array
o Kan niet verzet worden, moet naar eerste element blijven wijzen
• Pointer naar constante waarde
o Const int *p = &n
o *p = … //gaat niet want de int waarnaar p wijst is constant
• TIP -> lees het achterstevoren
o int const *p -> p is een pointer naar een constant int
o const int *p -> p is een pointer naar een constant int
o int *const p -> p is een constante pointer naar int
Bewerkingen op pointers
• Voorbeeld
o Int t[5] = {0};
o Int *p
o P = &t[3];
o P++ //verspringen in geheugen naar volgend
element
o T niet verplaatsen
o Geen bewerkingen met voidpointers
• Arraypointers niet verzetten in hoofdprogramma, wel in andere functies
Void vulop(int *t, int n, int w) {
Int i ;
For (i=0) ; i<n ; i++) {
*t++ = w //ok, t is gewone pointer -> verplaatsen OK
}
}

Int main() {
Int i ;
Int t[10] = {0}
For(i=0 ; i<10 ; i++) {
*t++ = 5 //nt ok, t = constante pointer, niet verplaatsen
}
Vulop(t, 10, 5)
Return 0
}
• Constante pointer
o Const int *p = &n
o Int * const q = &n
o Const int * const l = &n
o Constante pointer -> bij declaratie initialiseren
Functiepointer
• Pointer naar een functie
o Void proc(int a, char b)
o Void (*p)(int, char)
o P = &proc OF p = proc
o (*p)(2,’a’) OF p(2,’a’)
• Array van functiepointers
o Double sum(double x, double y) { return x+y }
o Double product(double x, double y} { return x*y }
Int main() {
Double a = 10, b = 5
Double (*pf[])(double, double) = { sum, product, fmin }

2

Documentinformatie

Geüpload op
5 november 2020
Aantal pagina's
15
Geschreven in
2019/2020
Type
Samenvatting
€3,49

Verkeerd document? Gratis ruilen Binnen 14 dagen na aankoop en voor het downloaden kan je een ander document kiezen. Je kan het bedrag gewoon opnieuw besteden.
Geschreven door studenten die geslaagd zijn
Direct beschikbaar na je betaling
Online lezen of als PDF

Verkocht
1
Volgers
1
Items
1
Laatst verkocht
3 jaar geleden


Waarom studenten kiezen voor Stuvia

Gemaakt door medestudenten, geverifieerd door reviews

Kwaliteit die je kunt vertrouwen: geschreven door studenten die slaagden en beoordeeld door anderen die dit document gebruikten.

Niet tevreden? Kies een ander document

Geen zorgen! Je kunt voor hetzelfde geld direct een ander document kiezen dat beter past bij wat je zoekt.

Betaal zoals je wilt, start meteen met leren

Geen abonnement, geen verplichtingen. Betaal zoals je gewend bent via Bancontact, iDeal of creditcard en download je PDF-document meteen.

Student with book image

“Gekocht, gedownload en geslaagd. Zo eenvoudig kan het zijn.”

Alisha Student

Bezig met je bronvermelding?

Maak nauwkeurige citaten in APA, MLA en Harvard met onze gratis bronnengenerator.

Bezig met je bronvermelding?

Veelgestelde vragen