-1
Hi, I have to do a CRUD in C, but I have a problem, I have to pass 3 strings to a function but I have no idea how to do, I’ve tried everything...
#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
#include <string.h>
typedef struct dados
{
int id;
char phone[50];
char fname[20];
char lname[20];
int dia, mes, ano;
} tDados;
void cadastrar(tDados *dados, int *cont, int id, char *fname, char *lname, int dia, int mes, int ano, char *phone);
int main()
{
setlocale(LC_ALL, "Portuguese");
char opcao[5];
int id, dia, mes, ano, cont = 0;
char fname[20], lname[20], phone[50];
tDados pessoa[20];
fflush(stdin);
printf("Comando: ");
scanf("%s %d %s %s %d/%d/%d %s", &opcao, &id, &fname, &lname, &dia, &mes, &ano, &phone);
if(strcmp(opcao, "add") == 0)
{
cadastrar(&pessoa, &cont, id, &fname, &lname, dia, mes, ano, &phone);
printf("%d\n%s\n%s\n%d/%d/%d\n%s", pessoa[cont].id, pessoa[cont].fname, pessoa[cont].lname, pessoa[cont].dia, pessoa[cont].mes, pessoa[cont].ano, pessoa[cont].phone);
}
}
void cadastrar(tDados *dados, int *cont, int id, char *fname, char *lname, int dia, int mes, int ano, char *phone)
{
int j = strlen(*(phone));
dados[*(cont)+1].id = id;
dados[*(cont)+1].dia = dia;
dados[*(cont)+1].mes = mes;
dados[*(cont)+1].ano = ano;
*(dados[*(cont)+1].fname) = fname;
*(dados[*(cont)+1].lname) = lname;
*(dados[*(cont)+1].phone) = phone;
*cont += 1;
}