Bonjour, j'ai du mal a comprendre un résultat, je veux que ma fonction fct modifie un champ d'une structure en entrée, j'ai donc fait:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>
#include <stdlib.h>
 
typedef struct ma_structure_t {
    int nombre;
} ma_structure_st;
 
void fct(ma_structure_st * ma_structure){
    ma_structure = (ma_structure_st*)malloc(sizeof(ma_structure_st));
    ma_structure->nombre=11;
}
 
int main()
{
    ma_structure_st * ma_structure;
    fct(ma_structure);
    printf("%i",ma_structure->nombre);
}
et mon résultat est un nombre "aléatoire" (je pense une adresse), pourtant les lignes de ma fonction seules dans un int main fonctionnent.
j'ai du mal à comprendre pourquoi le résultat n'est pas 11?