Bonjour,
Décidemment j'ai du mal avec les char*
j'ai écrit une fonction comme ceci :
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 static bool ExtractVariableName (const char *Source, char* DestName) { // The function look if the Source is a variable name and if it is, it extract just the name and stock it in DestName // A variable in the document is specify with its name between brackets '[' and ']' // If it is effectively a variable it return TRUE else it return FALSE DestName = ""; if ((Source[0] == '[') and (Source[strlen(Source)-1]==']')) { const char* i = &Source[1]; strncpy(DestName, i,strlen(Source)-2); return true; } return false; }
Ca plante au niveau de strncpy. Je pense que c'est parceque la taille de DestName = 0. Je pensais que strncpy se chargait du redimensionnement de la variable destination mais ce n'est apparemment pas le cas.
Est ce que c'est bien de là que vient mon problème et comment faire ce redimensionnement ?
Merci d'avance pour vos réponses.
Partager