У меня есть проблема, пытаясь использовать char ** в структуре на языке C.Char ** в структуре в C: ошибка сегментации 11
Цель моего кода - сохранить историю строк. Структура имеет 2 переменные:
codeJuste, представляющий собой цепочку символов NB_PION. Коды, которые представляют собой массив случаев NB_COUPMAX. Каждый случай хранит код, который является строкой символов NB_PION.
Я пытаюсь записать в каждый случай кодовПроекты, но у меня есть ошибка ошибки сегментации. благодарю вас за помощь за попытку помочь мне (извините за мой английский, я французский).
Вот мой код тестирования:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <string.h>
#define NB_PION 4
#define NB_COULEUR 4
#define NB_COUPMAX 6
//Définition d'une structure
typedef struct _Partie{
char* codeJuste;
char** codesProposes;
} Partie;
int main (int argc,char** argv[]){
Partie maPartie;
maPartie.codeJuste = malloc((NB_PION+1) * sizeof(char));
strcpy(maPartie.codeJuste,"AAAA");
maPartie.codesProposes = malloc(NB_COUPMAX * ((NB_PION + 1) * sizeof(char)));
strcpy(maPartie.codesProposes[0],"BBBB");
strcpy(maPartie.codesProposes[1],"CCCC");
printf("1:%s \n",maPartie.codeJuste);
printf("2:%s \n",maPartie.codesProposes[0]);
printf("3:%s \n",maPartie.codesProposes[1]);
}
Где вы получите сообщение об ошибке (что линия) и что это говорит именно? –
o_weisman: Я получаю сообщение об ошибке при запуске программы после компиляции. Ошибка: «Ошибка сегментации: 11» – clmt974