aboutsummaryrefslogtreecommitdiff
path: root/semestre 3/structures des données/td/td1/exo2.c
blob: 7b3acf7430ef9c188c3049e60d9f3e0928ab3440 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <stdio.h>
#include <stdlib.h>

/* incremente de 1 la valeur de 'p' */
/* passer un arg en pointeur permet à une fonction de faire des effets de bord, comme retourner plusieurs valeurs */
void incrementer(int *p){
    (*p)++;
}

void main(void){
    int *p;
    int i = 1;

    p = &i;
    printf("%d\n", *p);

    /* Cette suite de est illogique car on ne connait pas la valeur de 'p' avant l'affectation */
    p = (int *) malloc(sizeof(int));
    incrementer(p);
    printf("%d\n", *p);

    free(p);
}