В настоящее время я изучаю структуры в C, и у меня возникли некоторые проблемы при работе со структурами и массивами, мне нужно создать код, который использует структуру, содержащую переменную char **, а затем мне нужно используйте эту структуру для создания двух строк char ** и используйте их для хранения некоторых строк.
К сожалению, мне не удалось создать эти две строки символов **. ребята, вы можете мне помочь?
P.S .: Если вы можете объяснить мне, как использовать структуры с массивами и динамическими массивами / строками, я был бы очень рад, мне нужно понять это для другого вопроса :)
Вот что я уже сделал:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX 4
#define MIN 1
typedef struct lists
{
char** reasons;
}lists;
int welcomeAndInput(char** pros, char** cons);
void addCon(char** cons);
void addPro(char** pros);
int main(void)
{
int result = 1;
lists cons = { (char**)malloc(sizeof(char*) * 1) };
lists pros = { (char**)malloc(sizeof(char*) * 1) };
while (result != 0)
{
result = welcomeAndInput(pros, cons);
}
getchar();
return 0;
}
int welcomeAndInput(char** pros, char** cons)
{
int result = 0;
printf("Choose an option: \n");
printf("1: Add a PRO reason \n");
printf("2: Add a CON reason \n");
printf("3: Print your reasons\n");
printf("4: Exit \n");
scanf("%d", &result);
getchar();
while (result != 0)
{
switch (result)
{
case 1:
{
addPro(pros);
break;
}
case 2:
{
addCon(cons);
break;
}
case 3:
{
break;
}
case 4:
{
result = 0;
break;
}
default:
{
while (result < MIN || result > MAX)
{
printf("Enter a valid input!");
scanf("%d", &result);
}
}
}
}
}
void addPro(char** pros)
{
}
void addCon(char** cons)
Спасибо!
P.S -V2: Итак, я заметил, что на самом деле дал вам неправильный код, вот код со всем, что мне удалось сделать. Я знаю, что вызов welcomeAndInput неправильный:)