Bonjour,
En c, une copie de chaine de caratère se fait par strcpy, pas par '='
xStruct.mNumber = iMNumber;
est donc à remplacer par
strcpy(xStruct.mNumber, iMNumber);
Mais avant de faire cela, il faut vérifier qu'il y a suffisamment d'espace alloué pour xStruct.mNumber.
En utilisant =, tu fais pointer xStruct.mNumber sur la chaine non modifiable "123456"... et le strncat -qui ne fait que ce qu'on lui demande- provoque l'erreur d'accès.
PS: c'est vraiment dommage de faire du c++ et de ne pas utiliser std::string ou CString : ce genre de soucis disparaissent.
Partager