Bonjour,

j'ai un bug avec la fonction strncpy.
je cherche à récupérer le préfix de chaque mot d'une liste de mots.
Le problème, c'est que à un moment, strncpy ne veut plus copier correctement.

Voici un extraie de code.
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
 
 
    for ( i = 0; i < size_of_list ; i++ ) {
        int taille_du_mot ;
        mot_a_inserer = PyString_AsString( PyList_GetItem( liste_de_mots, i ) ) ;
 
        [...]
 
        index = 1 ;
        strncpy( prefix, mot_a_inserer, index ) ;  //prefix = mot_a_inserer[ : index ]
        printf("pour etre sur que ca bug : \n") ;
        printf("mot %s copié sur %d\n", mot_a_inserer, index );
        printf("prefix %s \n", prefix ) ;
        printf("-----------------------------\n" );       
        insertion_termine = FALSE ;
Et voici ce que ça affiche.

pour etre sur que ca bug :
mot art copié sur 1
prefix a
-----------------------------
pour etre sur que ca bug :
mot artiste copié sur 1
prefix a
-----------------------------
pour etre sur que ca bug :
mot article copié sur 1
prefix artis
-----------------------------
Pourquoi à la dernier ligne copier "article" sur 1 me renvoie "artis" et non "a" ?

D'avance, merci beaucoup.